Страница 3 из 3

Добавлено: Вс дек 10, 2006 4:44 pm
kLabMouse
japplegame
И по сорсам ТОЖЕ.
Только Бибиан Компилил в Гцц. И оно каким-то образом немного быстрее пашет.

Добавлено: Вс дек 10, 2006 5:53 pm
japplegame
kLabMouse писал(а):japplegame
И по сорсам ТОЖЕ.
Только Бибиан Компилил в Гцц. И оно каким-то образом немного быстрее пашет.
По сорцам скорее всего нет. На этом сайте еще самая первая версия ropp.dll, в которой CAST и RMD-128 еще на асме. А в GCC-шной версии эти две функции уже на C переведены.

Добавлено: Вс дек 10, 2006 5:56 pm
kLabMouse
japplegame
Чесно Говоря. Разницы почти нет. Только немного быстрее пашет.
Хотя Тот что здесь более приблежон к оригиналу.

Добавлено: Вс дек 10, 2006 6:06 pm
japplegame
kLabMouse писал(а):japplegame
Чесно Говоря. Разницы почти нет. Только немного быстрее пашет.
Хотя Тот что здесь более приблежон к оригиналу.
А как определили, что быстрее пашет?

Добавлено: Вс дек 10, 2006 6:29 pm
kLabMouse
japplegame
По умолчанию Гцц Намного лучше оптимизацию проводит. + Ко всему часть кода на С. В скомпиленм в Гцц ыиде намного ефективней себя ведёт чем в VC++ как оригинал.

Добавлено: Вс дек 10, 2006 9:47 pm
japplegame
kLabMouse писал(а):japplegame
По умолчанию Гцц Намного лучше оптимизацию проводит. + Ко всему часть кода на С. В скомпиленм в Гцц ыиде намного ефективней себя ведёт чем в VC++ как оригинал.
Очень, очень, очень сомневаюсь. Я даже практически уверен, что код сгенеренный ГЦЦ будет хуже чем MSVC++ и даже Borland C++.

Добавлено: Вс дек 10, 2006 9:50 pm
kLabMouse
japplegame
Ты Забыл О Том что в оригинале никакой Оптимизации НЕТУ. А так-же для Асм Функций Оптимизации тоже НЕТУ.
А теперь смотря на то что мы добавили на С++ те две нещасные функции которые были на Асме. Соответвенно на них сработала оптимизация Компилятора. И В результате у нас немного быстрее код получился. Вот и всё.

Добавлено: Вс дек 10, 2006 9:53 pm
japplegame
kLabMouse писал(а):japplegame
Ты Забыл О Том что в оригинале никакой Оптимизации НЕТУ. А так-же для Асм Функций Оптимизации тоже НЕТУ.
Асм функции уже оптимизированы MSVC++. И оптимизация там очень заметна. Ты не путай. Часть кода, который был написан корейцами кривой до безобразия, но его полностью переписал Jerry. А с кодом хэш-функций все в порядке, там нет никаких косяков, все чисто и аккуратно.

Добавлено: Вс дек 10, 2006 9:57 pm
kLabMouse
japplegame
Но как-то странно что на функции что были на асме больше времени процесорного уходит чем те что скомпиляны на С.

ЗЫ: Офтоп.... сильно Оффтопим.

Добавлено: Вс дек 10, 2006 10:10 pm
japplegame
kLabMouse писал(а):japplegame
Но как-то странно что на функции что были на асме больше времени процесорного уходит чем те что скомпиляны на С.

ЗЫ: Офтоп.... сильно Оффтопим.
Вот я и спрашиваю как вы время замерили, мне просто интересно :).
А так офтопим. :) Удалите нах все это :)

Добавлено: Вс дек 10, 2006 10:13 pm
kLabMouse
japplegame
Есть Такая Тулзина. Run Time. Щитает выполнение процедуры в тиках проца.

Добавлено: Вс дек 10, 2006 10:31 pm
japplegame
kLabMouse писал(а):japplegame
Есть Такая Тулзина. Run Time. Щитает выполнение процедуры в тиках проца.
Хм, для подсчета тиков процессора нужны специальные инструменты, которые выпускают производители процессоров. У AMD свои, у Intel свои. Все остальное от лукавого.
В современных процессорах сам черт ногу сломит, предсказание ветвлений, параллельное выполнение десятка команд за один тик, использование кешей первого и второго уровней и т.п. Эти вещи досконально знают только производители процессоров.

Добавлено: Вс дек 10, 2006 10:34 pm
kLabMouse
japplegame
Ну. У меня Есть такие ресурсы. :)

Добавлено: Вс дек 10, 2006 10:41 pm
japplegame
Ну они лежат на сайтах Интел и АМД
Хотя для просто подсчета тактов проца, для коротких кусков кода (чтобы винда не успела переключить проц на другую задачу) можно замерить командой RDTCS. Но опять же нужно делать несколько замеров и рузультат для разных процессоров может сильно отличаться особенно между процами разных поколений.

Добавлено: Вс дек 10, 2006 10:47 pm
kLabMouse
japplegame
В Общем Я делаю Немного по другому. Есть у мя Оперуха небольшая. Которая запускает защищённій режим и т п. НО не использует переключение процесов. А так-же Асмовский код от АМД которій собственно и замеряет.