И ещё, в самых первых точней нулевых версиях, не использовал фреймбуфер, рисовал SetPixel, получал всего 3 ФПС. А так, в 0.01 получаю на райзене...
Подумав почему версия 1.05 не быстрей 1.04, решил что есть задержки. Потом вспомнил что в SSE2 есть инструкции pslldq и psrldq, это сдвиги влево и...
Mikl___, вообще счётчик сообщений это же private, счётчик чётко привязан к кол. сообщений(не знаю изменяется ли, если сообщения удаляются). В...
Попробовал сделать параллельные SSE операции, и получил те же 200 ФПС, это у меня версия 1.05. Откатил до 1.04, где я использовал просто скалярные...
Сделал, и... ФПС стал больше, ровно 200 кадров. Но прежний вариант выдавал 180, не сильно быстро, правда я использовал скалярные SSE, если...
Кстати, тут можно ещё одну оптимизацию применить! Сложение косинусов. [IMG] [IMG] И убрать косинусы из цикла, скорость возрастёт даже питухоне....
У меня такая шняга, недоделано. ;ver for x86-32 ;//include Hash_CRC32.asm xr_vector struct ;(sizeof=40, align=8) _Alval dword ?...
Короче, это у меня косяк, я выравнивал данные, оставляя 8 байт вначале последовательности, и при переносе данных эта функция выравнивали на 8, а...
MaKsIm, да, проверил, к вектору прикрутил хэш, этот хэш показал что при перемещении блока данные изменяются, т.е портятся. Это вообще бред, блок...
Функция GlobalReAlloc уничтожает данные при перемещении, или нет? У меня для х64 не уничтожала данные, а в 32-режиме портит данные, хотя вроде...
...да ещё UASM делает не правильный вроде как код. Если так сделать, то UASM ожидает с точкой число, и сделает ноль. vec2d@BitSign __m128d {...
Начал делать двойную точность, ну портировать код под double. И неожиданно столкнулся с проблемой. инструкция cvtps2dq работает не совсем так, как...
alex_dz, мне это пока не надо, разве что ли для гравитационной демки, типа куча звёзд летают вокруг друг друга. Короче, тангенс TANPS чисто на...
Теперь надо тангенс, а для этого надо пересчитать константы, с этим есть сложности, но я разберусь.
Попробовал, и... не прокатила. ;возвращает в xmm0: x, в xmm1: signFase NORMALIZE_ANGLE_90 MACRO ;;fase=modf(X, Pi); period=(int)(X/Pi);...
Доделал. Теперь нужная точность достигается за меньшее кол. итераций, вот только быстродействие не слишком возросло, накладные расходы однако. При...
galenkane, вроде не плохо, но я уже разобрался, аналитику сам провёл. Формулу свёрху преобразовал в SSE... У нас потоковое вычисление. SIMD (англ....
Почти получилось нормализировать до 90. ;fase=modf(X, Pi/2); period=int(X/(Pi/2));...
Автор ещё под накинул. [MEDIA] Теперь питухону никакой намбу не помог. Тут ещё можно на шейдерах попробовать.
Ну значит оптимизировал код. Теперь число предварительно нормализируется до -\pi ... \pi, точность, то есть количество итераций для нужной...
Имена участников (разделяйте запятой).