PC Club

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PC Club » Playstation 2 » GSdxGUI


GSdxGUI

Сообщений 1 страница 13 из 13

1

Сейчас дорабатываю версию 1.0.9.

Изменения пока следующие:
- добавление кнопки "Benchmark". После теста результат будет выведен на экран и сохранен в папку с прогой в файл "result.txt".
- теперь название плагина читается из файла настроек pcsx2. Раньше было строго "gsdx.dll"
- плагин теперь подключается к программе, а не используется как внешний файл. Только в случае бенчмарка и настройки, с реплеем пока проблемы

Работать начал только сегодня и сделано пока мало из задуманого, на очереди еще:
- переработка механизма чтения языковых файлов и работы с языками. Сейчас все построчно читается и при добавлении строки приходится в нескольких местах править... напрягает
- Сейчас во время бенчмарка прога просто подвисает, как бенч окончен она оживает... Сегодня пробовал сделать через потоки, но там какие-то проблемы... поток возвращает управоение раньше, чем заканчивается бенчмакр и это вызывает ошибку.
- Доделать реплей, чтобы он не через rundll32 вызывался, а напрямую.

Есть идеи что еще сделать, доделать?

Вначале думал 1.09 переписать в MFC, заместо vcl, но понял что я еще слишком слаб в MFC для такого :) 2 года на vcl убивает мозг начисто, очень трудно перейти на MFC...

2

Что именно предполагается выводить в резалты бенчмарка?

3

Вообще, к сожалению, бенчмарк не будет отражать реальной производительности, т.к. по причине поистине слоновьих размеров .gs дампов любой относительно длинный реплей (например, запись боя целиком) упрется в скорость дисковой подсистемы (бои в Т4-5 в среднем сожрут 3Гб).
Если же дамп "быстрый", всего несколько кадров, то производительность может быть (и бывает в большинстве случаев) гораздо выше реальной, поскольку CPU не учитывается, так же как и затраты на рендер звука. Таким образом, на малых дампах можно сравнивать различные настройки и ревизии плагина между собой, т.е. скорость видеоподсистемы, но не всей машины в целом.

4

Firnis написал(а):

Есть идеи что еще сделать, доделать?

В связи с вышеизложенным идея есть, но вот насколько она реализуема... Нужно отвязать скорость воспроизведения от скорости винтов, т.е. сделать предварительное кэширование реплея в ОЗУ, неплохо бы с изменяемым размером кэша. Таким образом размер реплея, воспроизводимого с реальной скоростью будет зависеть лишь от объема установленной в машине RAM (уж я бы выставил размерчик кэша, хе-хе...)

5

EdHell
1) Бенчмарк не мой, а тот что Габест реализовал в 802-й ревизии, он тестирует не дампы, а сам плагин и твою систему и выдает текстовые данные.

Свернутый текст

-------------------------

32 x 32

[  32]   8589   2147 |    858    214 |   8589   2147
[  24]   1610    536 |    636    212 |   6882   1720
[  16]   6882   3441 |    434    217 |    928    464
[ 16S]   8659   4329 |    434    217 |    928    464
[   8]   4329   4329 |    220    220 |    476    476
[   4]   2164   4329 |    116    232 |    357    715
[  8H]   1009   1009 |    235    235 |   1677    419
[ 4HL]    329    659 |    116    232 |   1431    357
[ 4HH]    330    661 |    114    229 |   1675    418
[ 32Z]   9850   2462 |    870    217 |   8589   2147
[ 24Z]   1610    536 |    636    212 |   7615   1903
[ 16Z]   6882   3441 |    435    217 |    953    476
[16ZS]   6882   3441 |    435    217 |    953    476

64 x 64

[  32]   9761   2440 |    928    232 |   8589   2147
[  24]   1610    536 |    687    229 |   7669   1917
[  16]   8521   4260 |    458    229 |    955    477
[ 16S]   8521   4260 |    464    232 |    955    477
[   8]   5711   5711 |    229    229 |    476    476
[   4]   2855   5711 |    122    245 |    357    715
[  8H]   1009   1009 |    256    256 |   1677    419
[ 4HL]    343    686 |    122    245 |   1462    365
[ 4HH]    343    686 |    121    242 |   1717    429
[ 32Z]   9761   2440 |    916    229 |   8589   2147
[ 24Z]   1660    553 |    678    226 |   7615   1903
[ 16Z]   8659   4329 |    458    229 |    953    476
[16ZS]   8659   4329 |    458    229 |    953    476

128 x 128

[  32]   3615    903 |    892    223 |   3615    903
[  24]   1432    477 |    677    225 |   3441    860
[  16]   8521   4260 |    477    238 |    881    440
[ 16S]   8659   4329 |    470    235 |    881    440
[   8]   5711   5711 |    241    241 |    452    452
[   4]   2855   5711 |    126    252 |    344    688
[  8H]    951    951 |    256    256 |   1527    381
[ 4HL]    318    636 |    124    249 |   1374    343
[ 4HH]    307    614 |    126    252 |   1493    373
[ 32Z]   3821    955 |    892    223 |   3615    903
[ 24Z]   1393    464 |    677    225 |   3441    860
[ 16Z]   8521   4260 |    477    238 |    881    440
[16ZS]   6882   3441 |    477    238 |    881    440

256 x 256

[  32]   3807    951 |    881    220 |   3615    903
[  24]   1355    451 |    687    229 |   3441    860
[  16]   3807   1903 |    470    235 |    881    440
[ 16S]   3441   1720 |    477    238 |    880    440
[   8]   3441   3441 |    242    242 |    451    451
[   4]   2855   5711 |    128    256 |    318    636
[  8H]    818    818 |    260    260 |   1493    373
[ 4HL]    277    554 |    126    252 |   1348    337
[ 4HH]    276    553 |    124    249 |   1493    373
[ 32Z]   3821    955 |    892    223 |   3615    903
[ 24Z]   1393    464 |    677    225 |   3441    860
[ 16Z]   3441   1720 |    477    238 |    880    440
[16ZS]   3441   1720 |    477    238 |    881    440

512 x 512

[  32]   1272    318 |    498    124 |   1227    306
[  24]    845    281 |    399    133 |   1227    306
[  16]   1376    688 |    343    171 |    603    301
[ 16S]   1319    659 |    333    166 |    592    296
[   8]   3441   3441 |    241    241 |    365    365
[   4]   2130   4260 |    130    260 |    220    440
[  8H]    399    399 |    152    152 |    928    232
[ 4HL]    162    324 |     74    148 |    858    214
[ 4HH]    162    324 |     74    148 |    916    229
[ 32Z]   1227    306 |    494    123 |   1205    301
[ 24Z]    818    272 |    412    137 |   1185    296
[ 16Z]   1319    659 |    347    173 |    603    301
[16ZS]   1322    661 |    340    170 |    592    296

1024 x 1024

[  32]   1206    301 |    494    123 |   1126    281
[  24]    792    264 |    387    129 |   1126    281
[  16]   1272    636 |    343    171 |    572    286
[ 16S]   1225    612 |    327    163 |    572    286
[   8]   1225   1225 |    209    209 |    343    343
[   4]   1231   2462 |    119    238 |    225    451
[  8H]    373    373 |    146    146 |    870    217
[ 4HL]    159    318 |     74    149 |    827    206
[ 4HH]    159    318 |     74    148 |    870    217
[ 32Z]   1185    296 |    497    124 |   1126    281
[ 24Z]    793    264 |    390    130 |   1091    272
[ 16Z]   1185    592 |    333    166 |    563    281
[16ZS]   1272    636 |    330    165 |    563    281

2) Дамп и так кэшируется во время первого прохода, об этом Габест позаботился. Кэшируется все что влезает. Т.е. во время второго прохода данные читаются из памяти.

6

1. Я уже видел эти циферки, только непонятно, что это значит. Сижу и гадаю, ага, вот это на битность цвета похоже, это на сглаживание, а это на зед-буфер. А что за попугаи? Габест их знает.
2. Спасибо, поэкспериментируем. В таком случае, я полагаю, размер реплея должен быть до 2Гб (если не запускать ось с ключом /3Gb).

7

Возьмем например строку...

[  32]   9761   2440 |    928    232 |   8589   2147

[32] - формат
9761   2440 - время вывода изображения
928    232 - время чтение изображения
8589   2147 - время чтения текстуры

8

Вот о форматах хотелось бы узнать подробнее, неочевидные обозначения. 32-24-16 - битность? 16zs-16z-24z-32z - Z-буфер? Или как? А остальное? Анизотропка, антиальясинг или еще что?

9

Вот первая бета нового GSdxGUI :)
От языков решил отказаться, слишком муторно и абсолютно бесполезно :)

Прошу поискать ошибки и подумать над доработкой :)
Писал в BSD 2006. Если кому хочется увидеть код, то пишем - выложу. Но сразу предупреждаю - он без каментов, хотя, по-моему, достаточно понятен :)

10

Бетка всегда запускается в режиме DX9, несмотря на выставленный в настройках DX10.

11

EdHell
Да, спасибо. Проблема даже глубже - всегда запускается DX9Hardware режим. Исправлю.

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

12

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

Не знаю когда найду время нормально занятся, сейчас дел всяких море... В принципе, я хотел 1.09 выпустить когда выйдет GSdx 0.1.9, надеюсь так и получится :)

upd
Небольшое обновление. Наконец выделил бенчмарк в отдельный поток. Теперь можно ставить на паузу и останавливать бенчмарк. Вотъ
Даже не понимаю что раньше не выходило... вроде все тоже сделал... Но раньше программа всегда вылетала с критом, странно...

Эх... а столько дожен был за это время сделать полезного для дома :)

Отредактировано Firnis (2008-07-19 14:11:55)

13

Принял решение переписать прогу на WinAPI, чтобы не зависить ни от одной IDE. Поэтому обновлений еще долго не будет :)
Пока занимаюсь написанием классов управления. Далее буду унифицировать уже имеющиеся функции, чтобы они тоже были независимы от фирмы производителя IDE.
Работа идет медленно, но верно :)

upd
Очередное обновление, версию менять не стал, т.к. сделано достаточно мало.
Исправил все баги, которые нашел;
небольшие внутренние изменения;
исправлен механизм запуска gs файла напрямую;
добавлены сообщения об ошибках при запуске gs файла напрямую, если возникнут, хотя вроде все поправил.

Сменил компилятор с Borland C++ 2006 Preview на Borland Turbo C++ 2006, есть свои плюсы и минусы:
+ он не выдает ошибок в своих файлах, как это делал первый.
+ он пока ни разу не удалил и не изменил свои файлы при компиляции кода с ошибками, как это часто делал первый. Мне приходилось переставлять BDS до 2 раз в день.
- на выходе получаем файл большего размера, ~50-80кб. Пока не выяснил почему, возможно включена какая-то лишняя опция, но сейчас не до этого.
- Иногда он вместо указания ошибки пишет "Internal compiler error" и хрен разберет что ему надо, особенно когда изменил не один десяток строк...

Минус обоих компиляторов - иногда тупо зацикливаются на какой-то ошибке. Можно что-то изменить, при компиляции он выдаст ошибку, меняем все назад и все равно получаем ошибку, помогает только перезапуск студии.

В принципе поэтому я и начал переписывать на WinAPI. Сегодня решил занятся багфиксом.

Отредактировано Firnis (2008-07-29 17:30:41)


Вы здесь » PC Club » Playstation 2 » GSdxGUI