Abstract
dc:description.abstractR is a programming language for statistics that enables users to express computation at a high level of abstraction. Until now, its only implementation has been the R interpreter. Though interpretation is convenient for interactive use, it hampers the performance of computation-intensive programs. This thesis describes the design and implementation of RCC, a compiler that translates R into C to improve performance and enable future optimization. RCC uses runtime libraries of the open-source R interpreter, combining compiled and interpreted code to achieve a complete translation. Function definitions and control flow in R are translated directly into C, while operations such as dynamic function modification remain interpreted. RCC-generated code in the current version achieves over a threefold speedup compared to the R interpreter. Hand-coded experiments suggest that optimizing the generated code using knowledge about the runtime libraries could improve performance by a factor of 100.
Degree
thesis:*- Name thesis:degree_name
- Master of Science
- Level thesis:degree_level
- Masters
- Discipline thesis:degree_discipline
- Engineering
- Grantor
- Rice University
- Year dc:date.issued
- 2004
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Garvin, John
- Advisor dc:contributor.advisor
-
- Mellor-Crummey, John
Subjects
dc:subject × 1Rights
dc:rights- Statement dc:rights
-
- Copyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.
- Language dc:language.iso
- eng
Identifiers
dc:identifier.*- Handle dc:identifier.uri
- https://hdl.handle.net/1911/17678
- OAI identifier oai:identifier
- oai:repository.rice.edu:1911/17678