Оптимизация работы алгоритма в ядре

Тема в разделе "WASM.NT.KERNEL", создана пользователем mart, 14 май 2009.

  1. mart

    mart New Member

    Публикаций:
    0
    Регистрация:
    1 окт 2007
    Сообщения:
    67
    Я реализовал драйвер, который помимо своей прямой функциональности реализует алгоритм шифрования, если конкретнее, то ГОСТ 28147-89. Шифрование работает не так быстро, как хотелось бы. Следовательно хотелось бы увеличить скорость. В основном там используются команды xor, rol, mov, xlat, push и pop, add, adc, sub, все подряд))) Вопрос первый: есть ли какие-нибудь хитрости, позволяющие оптимизацию именно в драйвере, аля хитрая работа с памятью и т.д.?
    Вопрос второй, не относящийся к кернелу: какие из представленных выше ассемблерных команд работают медленно и на что можно их заменить, чтобы увеличить скорость?

    Заранее спасибо!
     
  2. NeuronViking

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    для начала сделал бы профайлинг кода и уже из результатов бы исходил... а так тебе дадут всего лишь очевидные общие рекомендации по оптимизации скорости.
     
  3. mart

    mart New Member

    Публикаций:
    0
    Регистрация:
    1 окт 2007
    Сообщения:
    67
    Не возражаю против очевидных рекомендаций=)
     
  4. Folk Acid

    Folk Acid New Member

    Публикаций:
    0
    Регистрация:
    23 авг 2005
    Сообщения:
    432
    Адрес:
    Ukraine
    Распараллелить шифрование на все 2000 ядер nvidia
     
  5. NeuronViking

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    тогда лучше спросить у гугля. он даст тебе больше ответов - быстро и по максимуму ;) на эту тему пишутся целые книжки. так что начни с самого начала - профайлинг.
     
  6. Folk Acid

    Folk Acid New Member

    Публикаций:
    0
    Регистрация:
    23 авг 2005
    Сообщения:
    432
    Адрес:
    Ukraine
    Вообще-то странный вопрос топика. Коммерческой ценности данных телодвижений ноль, поскольку все давно решено, разве что ты гений и сможешь осилить оптимизацию не в ущерб надежности. Для курсача разве что.
     
  7. gilg

    gilg New Member

    Публикаций:
    0
    Регистрация:
    19 май 2005
    Сообщения:
    527
    Всю память выделять в non-paged пуле и считать на dispatch-level :)
     
  8. Clerk

    Clerk Забанен

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

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    gilg
    Clerk

    =))))))))
    за такую "оптимизацию" можно и по голове получить
     
  10. gilg

    gilg New Member

    Публикаций:
    0
    Регистрация:
    19 май 2005
    Сообщения:
    527
    NeuronViking

    Зато быстро, задача решена :))