Show simple item record

Leveraging Compiled Languages to Optimize Python Frameworks

dc.contributor.advisorKarsai, Gabor
dc.contributor.advisorDubey, Abhishek
dc.creatorMayer, Ethan
dc.date.accessioned2024-01-18T21:52:59Z
dc.date.available2024-01-18T21:52:59Z
dc.date.created2023-12
dc.date.issued2023-11-16
dc.date.submittedDecember 2023
dc.identifier.urihttp://hdl.handle.net/1803/18549
dc.description.abstractThis thesis proposes methods of improving the performance of Python frameworks by incorporating the use of compiled languages. The framework in question in this research is RIAPS, a large, embedded software framework, written entirely in Python, whose purpose is to host distributed developer applications for the smart grid. Due to the nature of the Python programming language, fast performance is traded for ease of use and accessibility. Python’s single-core nature prevents it from taking advantage of the abundance of independent cores found on modern CPUs. However, novel techniques are investigated to speed up Python frameworks such as this. Incorporating compiled languages, such as Cython or C/C++, is done to determine which is the ideal solution to enhance the performance of frameworks such as RIAPS. By using these faster, compiled languages, the performance-centric portions of RIAPS can be sped up significantly. Prototype implementations are created for the investigated solutions, and they are then tested in a proof-of-concept fashion in order to quantify the potential performance improvement. Many different tests with varying workloads are performed to achieve a wide range of data representative of many different potential situations the framework may encounter. The results of these tests are analyzed to determine not only if the proposed solution is an effective speedup, but also to quantitatively show how much of an improvement can be achieved in the varying types of workloads tested.
dc.format.mimetypeapplication/pdf
dc.language.isoen
dc.subjectPython
dc.subjectC++
dc.subjectCython
dc.subjectMultithreading
dc.subjectFramework
dc.subjectOptimization
dc.titleLeveraging Compiled Languages to Optimize Python Frameworks
dc.typeThesis
dc.date.updated2024-01-18T21:52:59Z
dc.type.materialtext
thesis.degree.nameMS
thesis.degree.levelMasters
thesis.degree.disciplineElectrical Engineering
thesis.degree.grantorVanderbilt University Graduate School
dc.creator.orcid0009-0003-1171-958X


Files in this item

Icon

This item appears in the following Collection(s)

Show simple item record