Сброс очереди команд.

Тема в разделе "WASM.ZEN", создана пользователем Clerk, 19 дек 2008.

  1. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Раньше в процессорах она сбрасывалась при переходах, сейчас при записи неподалёку от текущей инструкции, чтобы избежать этого я решил использовать разделяемую память, всёравно сбрасываетсо. (тут сорс и скрин: http://openfile.ru/156118/). Можно избежать этого ?
     
  2. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Топик тут почитал http://www.wasm.ru/forum/viewtopic.php?id=27289&p=1 но мне интересна чисто практическая сторона.
     
  3. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Бесполезняк. Во-первых, на современных камнях очередь команд это чисто внутренняя фича процессора, недоступная "для внешнего мира". Соотв-но процесссор полностью отвечает за правильную послед-ть выполнения команд перед "внешним миром" - внутри него постоянно происходят "сбои" из-за непредсказанных переходов и исключений, но неверно выполненые команды никогда не вылезают наружу, т.к. они копятся в буфере и при выявлении сбоя просто выкидываются. Это общая "теория", и с "с практической стороны" можно лишь надеятся на ошибки реализации этой теории в конкретных моделях процессоров (это скорее вопрос к вездесущему Мыщху ;)

    Ну а попытка сыграть на разделяемой памяти это вдвойне бесполезняк, т.к. кэши процессора работают с физическими адресами, а не виртуальными. Только в P4 для ускорения хит-теста L1 юзаются вирт.адреса, но затем все равно проверяется физ.адрес и в сл.ошибки делается откат
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    leo
    Я именно на Errata и расчитываю. Вобщем понятно, спасибо.
     
  5. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    leo
    Можно ли использовать для этого перекрёстный код(два процессора) ?
     
  6. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.557
    Адрес:
    Russia
    Clerk
    Могу посоветовать самомодифицирующийся код. Отлично сбрасывает очередь. Но страница должна быть р\в )
     
  7. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    TermoSINteZ
    Нужно чтобы отлично не сбрасывалась.
     
  8. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.557
    Адрес:
    Russia
    Clerk
    Да, пардон, просто по теме топика подумалось, что именно сброс интересует.
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Перекрёстный код работоет, хотя планирование берёт своё.
     
  10. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Clerk
    Загадками говоришь - что значит "работает", и "берет свое" ?