|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Modus ponens
|
Math.random и Math.pow если в цикле, то лучше вызывать по ссылке:
Не значительно, но все таки есть разница.
__________________
Hell is the possibility of sanity |
|
|||||
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Цитата:
За совет - спасибо! Буду знать) 2 VovkaMorkovka1: as3-lisp: http://www.solve-et-coagula.com/?p=9 нечто кложуроподное: http://wiki.github.com/aemoncannon/las3r/ Но мне кажется это - just for lulz) PS:2VovkaMorkovka1 - сорри -не увидел твою ссылку..
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 11.05.2010 в 10:16. |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Это откуда такое? За счет локальных переменных?
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Цитата:
var time:int = getTimer(); var s:int = 0; for (var i:int = 0; i < 100000; i++) { s += Math.random(); } tf.text = (getTimer() - time).toString();//52 var rnd:Function = Math.random; var time:int = getTimer(); var s:int = 0; for (var i:int = 0; i < 100000; i++) { s += rnd(); } tf.text = (getTimer() - time).toString();//149 либо медленность вызова функции по ссылке губит весь прирост от пропускания операции "." Пробуем на haXe: var time = Lib.getTimer(); var s = 0.; for (i in 0 ... 100000) { s += Math.random(); } tf.text = Std.string(Lib.getTimer() - time);//47 var rnd = Math.random; var time = Lib.getTimer(); var s = 0.; for (i in 0 ... 100000) { s += rnd(); } tf.text = Std.string(Lib.getTimer() - time);//107 Извиняюсь, лажанулся - тормоза были из-за преобразований Number-Int: Ток вот что haXe тормозит - не понятно =( Последний раз редактировалось expl; 11.05.2010 в 21:47. |
|
|||||
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Цитата:
|
|
|||||
Modus ponens
|
debugline 27 |debugline 33 getlocal2 |getlocal2 getlocal1 |findpropstrict :Math getglobalscope |getproperty :Math call (0) |callproperty :random (0) add |add convert_d |convert_d setlocal2 |setlocal2 debugline 25 |debugline 31 getlocal4 |getlocal4 increment_i |increment_i convert_i |convert_i setlocal4 |setlocal4 for (var i:int = 0; i < 10000; i++) { s += r(); // line 27 } for (i = 0; i < 10000; i++) { s += Math.random(); // line 33 } EDIT: Хотя, есть предположение, что findpropstrict будет работать с разной скоростью в зависимости от того, сколько у нас обозначено maxscope для функции, хотя, кто знает, вполне возможно, что это правило на getlocal тоже распространяется... EDIT2: Жаль, что нету calllocal
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 11.05.2010 в 23:07. |
Часовой пояс GMT +4, время: 12:44. |
|
« Предыдущая тема | Следующая тема » |
|
|