Да, сложный вопрос я задал..![]()
Да, сложный вопрос я задал..![]()
не сложный но малопонятный...
скажем 3dmark понятно что делает и для чего, а что ты хочешь непонятно...
почти все клоны и их особенности описаны...
т.е оригинал 68000 тактов в инте
пентагон 71000 с чемто
если тебе нужна мерилка тактов - то ее написать от нефиг нафиг, а если чтото другое - опиши подробнее
С уважением,
Jerri / Red Triangle.
Каждая задача имеет простое, но неправильное решение.
Можно было ткнуть пальцем на какую-нибудь измерялку (например ZX_BENCH из ZX-Format#2) и успокоится.
Аксиома первая:
ZX-Spectrum - это аппаратная система реального времени, производительность которой по определению равна Z80@3.5MHz.
Важно не чтобы было быстро, а чтобы не было тормозов. То есть производительность ни при каких обстоятельствах не должна уменьшаться ниже означенной.
Измерять нужно не производительность а тормоза. Чтобы грамотно измерить тормоза (и определить находяться ли они в допустимых рамках) нужно знать их источник, а для этого надо знать аппаратную архитектуру измеряемой машины. Поэтому - архитектуру в студию. Популярные примеры тормозов: видеопамять, округление команд до чётного такта, контроллер клавиатуры.
Дважды было упомянуто "кэширование" а также некоторый "эталонный цикл". Если имеется ввиду общепринятое значение и цикл влезает в кэш, то результат измерения смысла не имеет. Кэширование используется в машинах где процессор - быстрый, а память медленная. В Speccy всё наоборот. А поскольку наоборот, то соответственным образом оптимизируется код, и как раз в наиболее критичных случаях кэширование может оказаться бессмысленным.
Практические рекомендации:
Необходимое (но недостаточное) условие отсутствия тормозов: не должны тормозить (и желательно правильно отображаться) фреймовые скроллы, мультиколоры и бордюрные эффекты, "тяжёлые" demo.
Померять "практическую" производительность можно на: ассемблировании, компрессии, decrunching, искусственном интеллекте в стратегических играх.
Программные продукты выбрать по вкусу, желательно популярные.
Так тактов-то у меня больше, сильно больше. Мерять же мне нужно в двух случаях. Первый когда система в простое и работает только мерялка, та самая элементарщина. Второй случай, когда прога активируется прерыванием INT и меряет что осталось после выполнения заданной программы. Фирштейн? Да, есть третье, когда тот же эксперемент проводится на другом спектруме для сравнения..Сообщение от jerri
Это уже ближе к искомому ответу.Сообщение от captain cobalt
В моей схеме задействовано два процессора, второй забудим, это контроллер. Первый же, это класический z80 на 20(25)MZh такты которого регулируются двумя способами, а именно изменение тактовой частоты и скважностью. Последнее тоже можно забыть, т.к. нужно проводить сравнительный тест..Сообщение от captain cobalt
А если будет больше? Много больше.Сообщение от captain cobalt
Конфигурация Z80=20-25MZh/128 и более/HDD/FDD виртуальный/AY/LCD.Сообщение от captain cobalt
Архитектура в стадии создания и ближе к отладке. Все подробности в "Железо" тема "Наладонник".
..У меня кеширование участка видеопамяти, т.е. остановки процессора для работы ULA не происходит! Хотелось бы знать, насколько эфективно используется этот режим, как и всё остальное, т.е. тест нужен.Сообщение от captain cobalt
Пока нет теста, трудно о чем-то говорить.Сообщение от captain cobalt
Это скорее плохо чем хорошо.Сообщение от TYAX
Как происходит торможение?Сообщение от TYAX
Всегда?
Или только при столкновении на определённых участках адресов, тогда каких?
Например, на 128 машинах тормозят четыре из восьми 16К страниц.
Не существует никаких "стандартных" тестов.Сообщение от TYAX
Каждый железнячник сам должен писать тесты для проверки специфических особенностей своего аппаратного решения.
Некоторые тесты упоминались тут.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Чем же? А если потребуется выполнять прикладные прожки, особенно современные.Сообщение от captain cobalt
Никак, а если имеется ввиду режим совместимости, то тормозится скважностью или частотой по выбору. Где скважность, там нет проблем с доступом к памяти для ULA. Запись в кеш-память происходит только в момент обращения к участкам памяти экранов. Да, в другие моменты кеш не доступен z80, совсем.Сообщение от captain cobalt
Торможения нет.Сообщение от captain cobalt
Спасибо, накачал, посмотрю.Сообщение от captain cobalt
Да, на тему того, что чуть выше.. я железячник, которому проще, намного проше подключить тактовый генератор через логический элемент "и" до или после прихода INT и померять количество тактов частотомером.. можно мерять по тактам, можно мерять по циклам..
А как можно померять сколько свободного времени у проца при помощи частотометра (или счетчика импулсов)? Просто для этих челей в операционках городят 3 этажные конструкции. Если имеется по halt то это в любом случае что то свое писать надо но имно легче при помощи калькулятора.Сообщение от TYAX
В том-то и вопрос, сколько команд пройдет при стольки-то тактов. Другое дело, что можно на прикладных подпрограммах задать запись в условный порт, а там через логический элемент и на частотомере посмотреть, сколько тактов затрачено или осталось..Сообщение от heroy
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)