Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Программа на Ассемблере в самом упрощенном виде. Ввод на экран одно числовое значение и выход.

Необходимо определить длину строки кэш процессора данной машины (на которой запустили).

Алгоритм:

1. Создаем массив заведомо больший строки кэш, например 1024

2. В цикле обращаемся побайтно к элементам созданного массива.

3. На каждой итерации цикла:

- инкремент счетчика;

- обращение к следующему элементу из массива;

- определение времени этого обращения;

- сравнение этого обращения с предыдущим, если оно на порядок больше выход из цикла.

4. вывод значения счетчика на экран

5. выход.

Как работает на примере:

1.Массив создается в область данных

2. Считывается в L2 кэш порциями, каждя порция длинной в искомую длинну строки кэш.

3. Считываем первый элемент в L2 попадает например 32 байта (длина строки данного процессора)

4. После того как считали все 32 байта, считываем 33 ий, которого нет в L2, следовательно срабатыват опять заполнение L2 строки

следующими 32 байтами из области данных с 33 по 64 байт. в этот момент на операцию уходит намного большее время чем напрямую

из L2. Этот провал и считаем ключом для выхода из цикла. И счетчик итераций будет ответом тоесть 32.

5. Вывод на экран:

32

6. Выход.

Необходим ASM исходник, можно и даже желательно чтоб собирался под LINUX, но не принципиально, как удобно.

14 лет назад
sirop
Иван 
42 годаРоссия
17 лет в сервисе
Был
3 года назад
  • Похожие заказы
  • $100

    Нужно исправить баг в проекте. Используется MS Detours. Проблема возникает в функции PR_Read из библиотеки nspr4.dll (см. https://developer.mozilla.org/en/Gecko_SDK ) Ошибка PR_WOULD_BLOCK_ERROR. Оставляйте ICQ для связи. Я сообщу подробности.

    Закрыт
    14 лет назад
  • $100

    Здравствуйте! Нужна программа по винду. Цель программы изменять ряд передаваемых браузером параметров. От вас потребуются опыт разработки программ для взаимодействия с виндосом (системой). Оставляйте сразу аську, подробности при переписке!

    Закрыт
    14 лет назад
  • Требуется написать прокси сервер для ICQ. Основная его задача - сохранять историю на сервере. Т.е. в icq-клиенте в настройках подключения выставляется прокси, и теперь все принятые и отправленные сообщения будут сохраняться на сервере в файлах от ...

    Закрыт
    14 лет назад
  • Ехе инсталлер, софт подписанный, не зло PEiD утверждает что не пожат ничем,Microsoft visual C++ софт - инсталлирует ПО типа скринсейвера на комп, и воспроизводит ролики в своем формате у софта после установки появляется несколько дллок на диске задача: выяснить ...

    Закрыт
    14 лет назад
  • Требуется рефакторинг сайта. Условия: Работа по ТЗ Исправление багов Сотрудничество на долгосрочной основе. Оплата только по факту выполненного и принятого конкретного ТЗ Требоване: инициативность и обязательность. Профессионализм. Примечание. Система управления старая. Пишите на почту [email protected] Сайт www.allo495.ru

    Закрыт
    14 лет назад
  • По программе, что нужно сделать. Нужно сделать программу, которую сможет скачать и установить любой пользователь windows xp – 7. После принятия пользователем соглашения и установки она должна запускаться вместе со стартом компьютера, как я понимаю ...

    Закрыт
    14 лет назад
  • $250

    Нужно реализовать один проект на основе MS Detours или на собственном движке. Предметная область - работа с HTTP. ТЗ, к сожалению, нет, поэтому оставляйте ICQ - я объясню более подробно.

    Закрыт
    14 лет назад
  • Добрый день! Замучился рыть интернет, поэтому публикую здесь как проект. Есть прибор, подключенный к ком-порту. Есть к нему софтина, которая работает. Есть описание протокола связи с ним. Пытаюсь сделать свою прогу работающую с девайсом, но никак не ...

    Закрыт
    14 лет назад