Войти
ФлеймФорумПроЭкты

Contra Force Advance (12 стр)

Страницы: 111 12 13 1420 Следующая »
#165
18:30, 8 июля 2018

beejah
Это platform-specific, как выяснилось. А вот sse везде пока рулит и бруталит.


#166
22:37, 8 июля 2018

bitw можно оптимизировать.
См. bit2 (для 64-битных систем) и bit4 (по задумке лучше для 32-битных).

http://rextester.com/DLHY92641

=A=L=X=
beejah
Просьба потестить.

#167
7:37, 9 июля 2018
%probab. | blt_if   | blt_tern | blt_tbl  | blt_cmov | blt_bitw | blt_bit2 | blt_bit4 | blt_sse2 | blt_avx2
0.000000 |    1.144 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.687 |    0.153 |    1.297
0.050000 |    1.450 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.763 |    0.153 |    1.297
0.100000 |    1.678 |    0.153 |    2.594 |    1.221 |    2.289 |    1.373 |    0.763 |    0.229 |    1.221
0.150000 |    1.984 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.687 |    0.153 |    1.221
0.200000 |    2.213 |    0.153 |    2.518 |    1.144 |    2.289 |    1.297 |    0.687 |    0.153 |    1.297
0.250000 |    2.594 |    0.229 |    2.518 |    1.221 |    2.213 |    1.297 |    0.763 |    0.153 |    1.221
0.300000 |    2.899 |    0.153 |    2.518 |    1.144 |    2.213 |    1.373 |    0.763 |    0.153 |    1.373
0.350000 |    3.128 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.687 |    0.229 |    1.297
0.400000 |    3.281 |    0.153 |    2.518 |    1.144 |    2.213 |    1.297 |    0.687 |    0.153 |    1.297
0.450000 |    3.510 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.687 |    0.153 |    1.297
0.500000 |    3.586 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.763 |    0.229 |    1.297
0.550000 |    3.510 |    0.153 |    2.518 |    1.144 |    2.289 |    1.297 |    0.687 |    0.153 |    1.221
0.600000 |    3.433 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.687 |    0.229 |    1.221
0.650000 |    3.281 |    0.229 |    2.518 |    1.221 |    2.289 |    1.297 |    0.763 |    0.153 |    1.221
0.700000 |    2.975 |    0.229 |    2.594 |    1.221 |    2.213 |    1.297 |    0.763 |    0.229 |    1.297
0.750000 |    2.747 |    0.153 |    2.518 |    1.144 |    2.289 |    1.297 |    0.687 |    0.229 |    1.221
0.800000 |    2.365 |    0.153 |    2.518 |    1.221 |    2.213 |    1.297 |    0.687 |    0.229 |    1.221
0.850000 |    2.060 |    0.153 |    2.594 |    1.221 |    2.289 |    1.297 |    0.687 |    0.153 |    1.297
0.900000 |    1.755 |    0.153 |    2.518 |    1.144 |    2.289 |    1.297 |    0.687 |    0.229 |    1.297
0.950000 |    1.602 |    0.153 |    2.518 |    1.221 |    2.289 |    1.373 |    0.687 |    0.229 |    1.297
1.000000 |    1.221 |    0.153 |    2.518 |    1.221 |    2.289 |    1.297 |    0.763 |    0.229 |    1.297
#168
12:45, 9 июля 2018

=A=L=X=
Вот, а то было странно, что четырёхстволом (32bit) не удаётся обогнать побайтовую обработку.

И без всяких компиляторо-специфичных вещей. Да и от платформы особо не зависит (желательно не меньше 32 бит). На LE/BE вроде тоже пофиг.

#169
13:52, 9 июля 2018

FordPerfect
> Просьба потестить.
Как только домой попаду, сделаю.

#170
18:32, 11 июля 2018

От SSE4.1 ему лучше не стало:
http://rextester.com/HUZL76472

Кстати, можно бы себе бэкпортить. А то у меня тоже побайтовая обработка.

Кстати, =A=L=X=, можешь завести её на GBA (физическом/эмуляторе); и здешние версии? Интересно:
1. Насколько малой кровью оно там заведётся.
2. Насколько будет тормозить.
#171
19:38, 11 июля 2018

FordPerfect
Ой, там возни много будет. К тому же GBA еще и сложен по опциям. У проца нет кеша, но уже есть трехстадийный конвеер. А так же первое поколение thumb, 16 битную шину к пзу и 256 кб озу и 32кб озу с 32-битной шиной. Нативные инструкции ARM все имеют способность условного выполнения, т.е. Не только cmov есть, но вообще любая инструкция может быть безбранчево откинута. Но когда код расположен в пзу картриджа, то рациональнее юзать режим 16-битных инструкций thumb где условны только бранчи. Но можно закинуть код и/или данные в быстрыеи32кб озу. Короче там этих тестов и без sse по хорошему тоже надо наворачивать сложно, ей богу лень.

#172
19:40, 11 июля 2018

Ну и, кстати, заливка экрана пиксельно на гба тормозит и там нет смысла в этих алгоритмах, там спрайтовый аппаратный видеочип и тем он и прекрасен.

#173
15:01, 12 июля 2018

Код блиттинга с произвольным ключом:
http://rextester.com/ZRISQ82196

#174
20:16, 12 июля 2018

=A=L=X=
Портируй в шейдер. Будет самое быстрое. Напиши шейдер, для удобной обработки эмуляции аппаратных тайлов приставки

#175
20:35, 12 июля 2018

*Lain*
У меня нет таких целей на горизонте.

#176
22:09, 12 июля 2018

=A=L=X=
Не романтик ты

#177
3:15, 13 июля 2018

*Lain*
> Не романтик ты
Ретромантик

#178
17:20, 11 сен. 2018

О, блин, яндекс-диск втихую перефигачил все ссылки на файлы на новые URL зачем то. При этом даже обнулились количества скачиваний/просмотров. Обновил ссылку в первопосте.

#179
12:41, 17 сен. 2018

Официально заявляю о прекращении работы над проектом.
Он так и остаётся полным open-source как материал для моего курса по введению по программированию на консоли Game Boy Advance - лицензия как бы BSD, так что любой может брать и сохраняя авторство и файлы лицензии курочить как душе угодно.
Можно обращаться ко мне за пояснениями даже - буду рад помочь кому-то.
Сам, однако, перестаю проЭкт развивать, но потому что надеюсь появиться в проЕктах. Это будет уже другая история.

Страницы: 111 12 13 1420 Следующая »
ФлеймФорумПроЭкты

Тема в архиве.