Psyco
Template:Short description Script error: No such module "Distinguish".
Page Module:Infobox/styles.css has no content.
| Psyco | |
|---|---|
| [[Programmer|DeveloperTemplate:Pluralize from text]] | Armin Rigo, Christian Tismer |
| Written in | C, Python |
| Operating system | Cross-platform |
| Platform | 32-bit x86 only |
| Type | Just-in-time compiler |
| License | MIT License |
| Website | psyco |
Script error: No such module "Check for conflicting parameters".
Psyco is an unmaintained specializing just-in-time compiler for pre-2.7 Python originally developed by Armin Rigo and further maintained and developed by Christian Tismer. Development ceased in December, 2011.[1]
Psyco ran on BSD-derived operating systems, Linux, Mac OS X and Microsoft Windows using 32-bit Intel-compatible processors. Psyco was written in C and generated only 32-bit x86-based code.
Although Tismer announced on 17 July 2009 that work was being done on a second version of Psyco,[2] a further announcement declared the project "unmaintained and dead" on 12 March 2012 and pointed visitors to PyPy instead.[3] Unlike Psyco, PyPy incorporates an interpreter and a compiler that can generate C, improving its cross-platform compatibility over Psyco.
Speed enhancement
Page Module:Message box/ambox.css has no content.
[[File:Template:Ambox globe current red|42px|link=|alt=]] | This section's factual accuracy may be compromised due to out-of-date information. (September 2018) |
Psyco can noticeably speed up CPU-bound applications. The actual performance depends greatly on the application and varies from a slight slowdown to a 100x speedup.[4][5][6][7] The average speed improvement is typically in the 1.5-4x range, making Python performance close to languages such as Smalltalk and Scheme, but still slower than compiled languages such as Fortran, C or some other JIT languages like C# and Java.[8]
Psyco also advertises its ease of use: the simplest Psyco optimization involves adding only two lines to the top of a script:[9]
import psyco
psyco.full()
These commands will import the psyco module, and have Psyco optimize the entire script. This approach is best suited to shorter scripts, but demonstrates the minimal amount of work needed to begin applying Psyco optimizations to an existing program.
See also
Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
- PyPy
- Unladen Swallow
- Cython
- YARV (Yet another Ruby VM)
References
Page Template:Reflist/styles.css has no content.
- ^ Page Module:Citation/CS1/styles.css has no content."psyco / Commits". Bitbucket. Armin Rigo.
- ^ Page Module:Citation/CS1/styles.css has no content.Tismer, Christian (17 July 2009). "[pypy-dev] ANN: psyco V2". pypy-dev mailing list.
- ^ Page Module:Citation/CS1/styles.css has no content."Psyco Homepage".
- ^ Page Module:Citation/CS1/styles.css has no content."Python Psyco benchmarks". Archived from the original on 2008-06-06. Retrieved 2008-04-24.
- ^ Page Module:Citation/CS1/styles.css has no content."Python Psyco Homepage at sourceforge". Retrieved 2009-03-04.
- ^ Page Module:Citation/CS1/styles.css has no content."A beginners guide to using Python for performance computing at scipy.org". Archived from the original on 2009-03-11. Retrieved 2009-03-04.
- ^ Page Module:Citation/CS1/styles.css has no content."Charming Python: Make Python run as fast as C with Psyco". IBM. Retrieved 2009-03-04.
- ^ Page Module:Citation/CS1/styles.css has no content."Boxplot Summary". Archived from the original on 2011-06-03. Retrieved 2009-10-16.
- ^ Page Module:Citation/CS1/styles.css has no content.Rigo, Armin. "Quick examples". The Ultimate Psyco Guide. Retrieved 3 June 2011.
External links
- Psyco on SourceForge
- David Mertz's IBM developerWorks article: Make Python run as fast as C with Psyco
- psyco notes, Poor Yorick
Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.