Наука и технологии России

Вход Регистрация

Российские математики сгенерировали квинтильоны квинтильонов случайных чисел

Группа математиков из Научного центра Черноголовки РАН (НЦЧ РАН) разработала библиотеку для генерации псевдослучайных чисел, рассчитанную на использование в компьютерах завтрашнего дня и которая на самом деле пригодна для работы в сегодняшних системах любого масштаба, начиная от простого ноутбука. Суть новой библиотеки описана ими в статье, которая будет опубликована в мартовском номере журнала Computer Physics Communications (импакт-фактор: 3,112).

Несмотря на кажущуюся легкость задачи -- разработать алгоритм, который генерирует большое количество случайных чисел – найти их источники крайне трудно. В мире существует масса случайных процессов, начиная от простого подбрасывания монетки и кончая невероятным множеством физических шумов, таких например, как космическое излучение, дробовой шум в резисторе, шум, возникающий в счетчиках Гейгера и т.д. и т.п. Однако используются эти шумы довольно редко. Причин тому много, одна из них -- опасность грубых атак на устройства, основанные на этом. Поэтому уже давно в технике применяются так называемые генераторы псевдослучайных чисел.

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

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

Библиотека псевдослучайных чисел, созданная в Черноголовке, содержит реализации сразу нескольких наиболее современных алгоритмов генерации таких последовательностей, в том числе и алгоритмов, разработанных авторами статьи. Процедуры библиотеки позволяют генерировать до 1019 независимых потоков случайных чисел, что позволяет использовать библиотеку на любых существующих суперкомпьютерах. По словам одного из соавторов работы, Льва Щура, заместителя председателя НЦЧ РАН по научной работе, длина этих потоков, на которой гарантируется случайность, вообще астрономическая, она оценивается порядком в 1020 -- 1030 чисел. Причем сами эти процедуры удалось существенно ускорить за счет использования расширенного набора команд AVX, появившихся в процессорах Intel и AMD два года назад. В результате скорость реализации последовательностей удалось удвоить по сравнению с предыдущей версией библиотеки, она, как заявляют авторы разработки, в 40 раз выше скорости алгоритмов, написанных на языке ANSI C, бывшего основным стандартным языком программирования до конца прошлого века.

Одними из лидеров в отношении создания подобных библиотек считаются фирмы Intel и NVIDIA. Преимуществом своей библиотеки профессор Щур считает наличие там пяти-шести вариантов генераторов, разработанных в Черноголовке. "Не бывает такого, что мы взяли и сделали лучше всех, -- говорит он. -- В каких-то вещах предпочтительнее наша разработка, в каких-то -- разработки этих фирм. Всегда хорошо иметь возможность какой-то альтернативы. Фактически работа ведется параллельно с ведущими фирмами".

Сама идея такой библиотеки, рассказывает Щур, возникла еще в 2006-м году. Дальше был длительный и довольно сложный процесс патентования идеи, закончившийся только в прошлом году. Это весьма важный этап, считает он.

«Само наличие патента, - говорит он, - означает, что можно выпустить на его основе некоторую микросхему, и если эту микросхему поставить на уже имеющуюся плату, то вся плата оказывается защищенной этим патентом. Такая защищенность патентом в некоторых случаях может оказаться довольно важной».

По словам Щура, работа библиотеки была проверена на трех тысячах графических карт, что было в тот момент своеобразным рекордом. Проверка осуществлялась на различных суперкомпьютерах, в том числе на суперкомпьютерах "Келдыш" и "Ломоносов", и на всех этих картах библиотека работала устойчиво. Авторы разработки утверждают, что их библиотека может прекрасно работать при проведении численного моделирования методом Монте-Карло (используемый в компьютерах метод, основанный на получении большого числа реализаций случайного процесса) на системах любого масштаба.

РЕЙТИНГ

3.60
голосов: 5

Обсуждение

Новости

Российские фармацевты повысили эффективность антибиотиков

Медики: даже один бокал вина может стать фатальным для сердца

К середине столетия популяция белых медведей сократится на треть

Сгоревший над Хакасией метеорит был неопасен

В Китае найден императорский жертвенный алтарь

TGO сделал первые снимки Фобоса

Кстати,
на
52%
сократились...