Ваш пример меня вдохновил, Вы, можно сказать, первопроходец в этом деле) Однозначно в карму +.
Но писал с нуля, т.к. мне так было проще.
А NLTK — это, насколько мне известно, только английский язык, был интересен именно русский.
перенесите, пожалуйста, в блог Python, кармы добавил
а то искал минут 10: как раз понадобилось, и ведь помню, что что-то проскакивало такое, а где искать — непонятно
Теряете часть оперативной памяти — в программах int становится не 4 байта, а 8.
Поэтому, например, если 4ГБ памяти в машине, то особого смысла переходить на 64 бит нет, т.к. доп. адресуемое пространство, ранее недоступное, будет сжираться более «толстыми» программами.
codespeak.net/pypy/dist/pypy/doc/home.html
веселуха по полной программе «bla-bla-bla up to the point of being able to automatically generate Just-in-Time compilers for dynamic languages»
psyco к тому же еще и год уже как заброшена) но всем как-то по барабану, работает ведь)
А автор psyco занят веселой штукой — пишет интерпретатор питона на питоне, чтобы прикрутить к нему потом JIT и всем было счастье и все работало быстрее, чем питон, написанный на C.
С памятью глянул — да, в руби прогресс заметен по сравнению с тем, что было раньше.
в питоне да, что-то такое есть, но это не компиляция, а скорее препроцессор, просто сокращение текста программы
«A program doesn't run any faster when it is read from a ‘.pyc’ or ‘.pyo’ file than when it is read from a ‘.py’ file; the only thing that's faster about ‘.pyc’ or ‘.pyo’ files is the speed with which they are loaded.»
нет, это не как use memoize.
use memoize — кеширование результатов
а psyco — это компиляция кода во время выполнения, т.е. функция на самом деле все считает тыщу раз, только делает это быстрее
так руби 1.9 потому и быстрее, что в него YARV интегрировали
а насчет того, что psyco не стандартный — это скорее штука идеологическая.
Его настолько просто использовать, что не вижу особой разницы.
установка: sudo easy_install psyco
использование:
import psyco
psyco.bind(function_name)
Питоновский «Explicit is better than implicit.» против «Convention over Configuration» от Руби в действии, кому что нравится)
А про память я заговорил именно поэтому, просто есть подозрение, что с jit-компиляцией ruby 1.9 станет есть больше памяти, примерно как python при использовании psyco. А раз все интегрировано, то бороться с этим станет сложнее. Замеров не проводил, просто мысли по поводу.
Суть-то в том, что вы уверены, что часть кода не сломается, именно из-за теста. Т.к. он «упадет», если изменения в программе будут неправильные. Ценность теста именно в том, что он «падает» и сигнализирует о логической ошибке. А тест, который заведомо не будет падать, и писать незачем.
Вы, скорее всего, просто неправильно поняли предложение (или даже одно слово — «упал»), т.к. пишете-то все верно)
Вроде бы следующая mac os snow leopard уже будет использовать gpu как дополнение к cpu не только для графических задач.
Photoshop cs4, например, уже использует.
А cuda — приятная штука, компилятор C для видеокарты. Думаю, очень скоро это все дело получит широкое распространение. Ведь уже сейчас работает на обычных видеокартах (втч и на недорогих, и на встроенных), дело только в софте.
но там только экспортированный из fireworks набросок дизайна)
надеюсь, что подробнее расскажу попозже, когда придет время.
Но писал с нуля, т.к. мне так было проще.
А NLTK — это, насколько мне известно, только английский язык, был интересен именно русский.
а то искал минут 10: как раз понадобилось, и ведь помню, что что-то проскакивало такое, а где искать — непонятно
Поэтому, например, если 4ГБ памяти в машине, то особого смысла переходить на 64 бит нет, т.к. доп. адресуемое пространство, ранее недоступное, будет сжираться более «толстыми» программами.
веселуха по полной программе «bla-bla-bla up to the point of being able to automatically generate Just-in-Time compilers for dynamic languages»
по замерам выходит, что так
значит статья — тру
А автор psyco занят веселой штукой — пишет интерпретатор питона на питоне, чтобы прикрутить к нему потом JIT и всем было счастье и все работало быстрее, чем питон, написанный на C.
С памятью глянул — да, в руби прогресс заметен по сравнению с тем, что было раньше.
«A program doesn't run any faster when it is read from a ‘.pyc’ or ‘.pyo’ file than when it is read from a ‘.py’ file; the only thing that's faster about ‘.pyc’ or ‘.pyo’ files is the speed with which they are loaded.»
use memoize — кеширование результатов
а psyco — это компиляция кода во время выполнения, т.е. функция на самом деле все считает тыщу раз, только делает это быстрее
а насчет того, что psyco не стандартный — это скорее штука идеологическая.
Его настолько просто использовать, что не вижу особой разницы.
установка: sudo easy_install psyco
использование:
import psyco
psyco.bind(function_name)
Питоновский «Explicit is better than implicit.» против «Convention over Configuration» от Руби в действии, кому что нравится)
А про память я заговорил именно поэтому, просто есть подозрение, что с jit-компиляцией ruby 1.9 станет есть больше памяти, примерно как python при использовании psyco. А раз все интегрировано, то бороться с этим станет сложнее. Замеров не проводил, просто мысли по поводу.
+ для таких штук в питоне есть psyco: пишем 2 строчки
import psyco
psyco.bind(Factor.factorization)
после объявления класса, и вуаля — у меня время real с 0.395 упало до 0.046, почти в 10 раз.
Вы, скорее всего, просто неправильно поняли предложение (или даже одно слово — «упал»), т.к. пишете-то все верно)
Photoshop cs4, например, уже использует.
А cuda — приятная штука, компилятор C для видеокарты. Думаю, очень скоро это все дело получит широкое распространение. Ведь уже сейчас работает на обычных видеокартах (втч и на недорогих, и на встроенных), дело только в софте.