|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Авг 28, 2003 20:06:39 _G3 ООО!!!! А может совместно устроим? Я тут давно на COMPO слюни пускаю :) |
|
|
Дата: Авг 28, 2003 20:15:25 твой вариант дает результаты хуже чем сишный, учитывая возможные погрешности - где-то такой же. Гм... ОК, я посмотрю это. |
|
|
Дата: Авг 28, 2003 20:15:54 Я не админ сайта. Но я думаю он тоже с удовольствием. В приложении то, что у меня на данный момент получилось. Файл rules.txt еще не доделан и с подсчетом времени надо что-то менять. _244359088__Filter.rar |
|
|
Дата: Авг 28, 2003 20:17:20 Забыл test.bat в архив засунуть ;( copy logow.bmp image.bmp filter.com emboss.com fc image.bmp test.bmp |
|
|
Дата: Авг 28, 2003 20:21:01 _G3 Я не админ сайта. Но я думаю он тоже с удовольствием. ОК, посмотрим. |
|
|
Дата: Авг 29, 2003 12:17:32 Новый код, при правильном выравнивании занимает 5 тактов! xor ebx, ebx inc eax cmp eax, 1 sbb ebx, ebx and edx, ebx inc ebx sub eax, ebx inc edx cmp edx, 1 sbb ebx, ebx not ebx add edx, ebx xor eax, edx Я перепроверил код и с CMOVcc и сишный - они занимают несколько больше, особенно сишный с ветвлением. Думаю, что меньше и быстрее уже не получится. |
|
|
Дата: Авг 29, 2003 13:16:57 · Поправил: The Svin Думаю, что меньше и быстрее уже не получится. :) Я даже не понял ещё о чём речь но уже видно, что: inc eax ;1 байт 1 клок cmp eax, 1 ;3 байта 1 клок (не парится - зависимость) sbb ebx, ebx ;2 байта 1 клок (не парится - зависимость) 3 клока 6 байт можно представить как add eax,1 ;3 байта 1 клок eax=0 и CF=1 если было -1 sbb ebx,ebx ;2 байта 1 клок 1 байт и 1 клок Теперь выкинем начальный xor ebx,ebx за ненадобностью (sbb ebx,ebx и так поставит его в 0 или -1) ещё 2 байта и 1 клок и того на первых строках 3и байта 2 клока. Дальше не смотрел :) |
|
|
Дата: Авг 29, 2003 13:23:57 Браво! 4 такта выходит. А еще меньше? Про add я пропустил :((( |
|
|
Дата: Авг 29, 2003 13:28:36 Про add не страшно, могло в голову не прийти. Вот начальное xor ebx,ebx - просто невнимательность. |
|
|
Дата: Авг 29, 2003 13:33:38 Та же история здесь: inc edx cmp edx, 1 sbb ebx, ebx Меняем на add edx,1 sbb ebx,ebx ещё такт и байт в копилку |
|
|
Дата: Авг 29, 2003 13:34:26 Та же история здесь: inc edx cmp edx, 1 sbb ebx, ebx Меняем на add edx,1 sbb ebx,ebx ещё такт и байт в копилку |
|
|
Дата: Авг 29, 2003 13:37:47 Задолбала эта защита от спама - ждал 3и минуты - всё равно говорит что 15 секунд не прошло |
|
|
Дата: Авг 29, 2003 13:37:50 Да чистить ebx - лишнее, со старого варианта осталось :( На скорость это, правда, не повлияло :) Алекс, исходное задание (чтоб не листать) if a=-1 a=b; if a=-1 a=0; Да, с edx все тоже меняется. |
|
|
Дата: Авг 29, 2003 13:39:50 ещё такт и байт в копилку Байт - да, такт - нет :)) |
|
|
Дата: Авг 29, 2003 13:41:27
Да она парилась с inc eax (теперь с add eax,1) |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.108 |