The Effect of Threading and Optimization on the Framerate of a Python-Based Partlcle Engine
CSEF · 2005 Mathematics & Software
Overview
Objectives/Goals The objective of this project was to test threaded versus non-threaded and optimization techniques in a Python-based particle generator script. Methods/Materials This project used python version 2.3.3, TextWrangler, the pygame libraries, and an iBook G3/700. Different versions of a benchmarking script were used to test different optimizations and the use of threading. Results Non-threaded with dirty rectangle optimization was tested to produce the fastest benchmark, non-threaded unoptimized the next fastest, threaded with dirty rectangle optimization next fastest, and threaded unoptimized last. Conclusions/Discussion The results supported the hypothesis and the objective of the project was reach. These results and the code may be reused to produce quick particle generators for use in games or making aesthetically pleasing graphical patterns.
Summary statement
This project is about making a Python-based particle engine with the highest framerate possible.
Help received
George Feineman assisted in the concept and some of the math.
Competition history
- CSEF 2005
Resources
Related projects
CSEF · 2015
A Computer Program to Track and Count Particle Trails
CSEF · 2014
Cycle Speed: Testing Computer Processing Speed
CSEF · 2010
Turbo Charging Computer with Mathematical Algorithms
CSEF · 2009
RAM vs. CPU: A Study on the Effects of RAM and CPU on Computer Speed and Performance
CSEF · 2014
Creating a Space Flight Simulator Program
CSEF · 2009
The Effect of Overclocking a Computer and the Use of Different Types of RAM on a Computer's Speed and Stability
CSEF · 2010
Exploring Rule Variations in Conway's Game of Life: Programming for the Computer and iPhone Platforms
CSEF · 2005
Simulation and Animation of the n-Body Problem in Two-Bodies
Closest projects by meaning, across every fair and year in the corpus.
Browse more like this
Source: California Science & Engineering Fair public projects