Psyco je specijalizovani upravo-na-vreme kompajler Pajton originalno napravljen od strane Armina Rigoa i dalje održavan od strane Kristijana Tismera.

Psyco
Originalni nazivengl. Psyco
Izgovara seSajko
Modelimperativni, objektno-orijentisani, funkcionalni
Autor(i)Armin Rigo, Kristijan Tismer
Aktuelna verzija1.6 32bit
Datum aktuelne verzije16.12.2007.
LicencaMIT Licenca
Veb-sajthttp://psyco.sourceforge.net

Psyco radi na BSD-baziranim operativnim sistemima, Linux, Mac OS X i Microsoft Windows korišćenjem using 32-bitne Intelovih kompatibilnih procesora. Psyco je napisan u C-u i generiše samo x86-bazirani kod. Nasledni projekat za Psyco je PyPy, koji sadrži interpretator i kompajler koji može da generiše C, unapređujući njegovu kompatibilnost na više platformi od Psyco-a. Oba dela su napisana u Pajtonu, ali interpretator je ograničen na subset Pajtona, nazvan RPython.

Unapređenje brzine

uredi

Psyco može primetno da ubrza aplikacije vezane za procesor. Stvarne performanse zavise veoma od aplikacije i variraju od blagih usporenja do ubrzanja od 100 puta.[1][2][3][4] Osrednje unapređenje brzine je tipično između opsega od 1.5-4x, čineći Pajton performanse blizu jezicima kao što su Smalltalk i Scheme, ali i dalje sporiji od kompajlovanih jezika kao što su Fortran, C ili neki drugi JIT jezik kao što su C# i Java.[5]

Psyco takođe reklamira svoju jednostavnost korišćenja: najjednostavnije Psyco optimizacije uključuju dodavanje samo dve linije koda na vrh skripte:[6]

import psyco
psyco.full()

Ove komande će uvesti modul psyco, i učiniti da Psyco optimizuje celokupnu skriptu. Ovaj pristup je najbolji za kraće skripte, ali demonstrira minimalnu količinu napora potrebnu da se započne primenjivanje Psyco optimizacija na već postojeći program.

Dalji rad

uredi

Tokom jula 17. 2009, Kristijan Tismer najavio je da je postojao rad na Psyco V2.[7] Međutim, tokom 12. marta 2012, Psyco je najavljen da je "neodržavan i mrtav" i posetioci su preusmeravani na sajt PyPy-a.[8]

Vidi još

uredi

Reference

uredi
  1. ^ „Python Psyco benchmarks”. Arhivirano iz originala 25. 07. 2011. g. Pristupljeno 24. 04. 2008. 
  2. ^ „Python Psyco Homepage at sourceforge”. Pristupljeno 04. 03. 2009. 
  3. ^ „A beginners guide to using Python for performance computing at scipy.org”. Arhivirano iz originala 29. 05. 2012. g. Pristupljeno 04. 03. 2009. 
  4. ^ „Charming Python: Make Python run as fast as C with Psyco”. Pristupljeno 04. 03. 2009. 
  5. ^ „Boxplot Summary”. Arhivirano iz originala 25. 07. 2011. g. Pristupljeno 16. 10. 2009. 
  6. ^ Rigo, Armin. „Quick examples”. The Ultimate Psyco Guide. Arhivirano iz originala 07. 05. 2011. g. Pristupljeno 3. 06. 2011. 
  7. ^ „Announcement on pypy-dev mailing list with links to project page”. Arhivirano iz originala 29. 06. 2012. g. Pristupljeno 20. 06. 2017. 
  8. ^ „Psyco Homepage”. 

Spoljašnje veze

uredi