Skip to main content

A framework for optimizing Python, 2003

 Item — Call Number: MU Thesis Hub, Call Number: MU Thesis Hub CD-ROM
Identifier: b2194891

Scope and Contents

From the Collection:

The collection consists of theses written by students enrolled in the Monmouth University graduate Computer Science program. The holdings are primarily bound print documents that were submitted in partial fulfillment of requirements for the Master of Science degree.

Dates

  • Creation: 2003

Creator

Conditions Governing Access

The collection is open for research use. Access is by appointment only.

Access to the collection is confined to the Monmouth University Library and is subject to patron policies approved by the Monmouth University Library.

Collection holdings may not be borrowed through interlibrary loan.

Research appointments are scheduled by the Monmouth University Library Archives Collections Manager (723-923-4526). A minimum of three days advance notice is required to arrange a research appointment for access to the collection.

Patrons must complete a Researcher Registration Form and provide appropriate identification to gain access to the collection holdings. Copies of these documents will be kept on file at the Monmouth University Library.

Extent

2 Items (1 print book and 1 compact disc) : textual and digital materials ; 8.5 x 11.0 inches (28 cm) and 4.7 inches.

Language of Materials

English

Abstract

With the increasing popularity of interpreted languages, primarily scripted languages - e.g. PERL, Python, Tel/Tk, and the use of these languages in creating major applications, the efficiency of the interpreter is becoming increasingly important. In this study, we investigated the feasibility of creating a virtual machine that is register-based rather than traditional stack-based virtual machines. We believe that a register-based virtual machine, while harder to create, should improve throughput because it does not suffer from the overhead of creating new objects and the overhead of stack maintenance. A virtual machine that is capable of handling a subset of the Python instruction codes was created. In addition to the register-based virtual machine, a stack-based virtual machine was created that utilized the same set of supporting functions as the register-based virtual machine. Both machines were used to interpret the same set of Python programs and execution time, measured as total clock cycles, was measured. In all cases the register-based virtual machine outperformed the stack-based virtual machine. In addition to the work done on virtual machines, ongoing work on the creation of a framework for the testing of compilers and interpreters is described.

Partial Conents

Abstract -- Acknowlegements -- 1. Introduction -- 2. Project scope and background -- 3. Design and implementation -- 4. Results and discussion -- 5. Conclusions -- A. Supported features and limitations -- B. Byte code file details -- C. Example Python constructs -- D. COM - the component object model -- E. Description of compiler classes -- F. Python byte code -- G. Sample Python programs -- References.

Source

Repository Details

Part of the Monmouth University Library Archives Repository

Contact:
Monmouth University Library
400 Cedar Avenue
West Long Branch New Jersey 07764 United States
732-923-4526