Great Internet Mersenne Prime Search

История

История проекта начинается 8 сентября 1588 года, когда родился Марен Мерсенн. Человек был разносторонний и интересный. Переписывался с множеством учёных своего времени (17 томов переписки!). В наше время наиболее известен как исследователь простых чисел, названных в его честь. Первые числа он вычислял вручную! Но появились компьютеры, и сейчас можно переложить сложные вычисления на них.

В 1996 году Джордж Волтман (George Woltman) основал GIMPS. Программа была написана на ассемблемер и работала на компьютере с процессором Intel 386. Не прошло много времени, и программа обнаружила первое число 13 Ноября. Первые версии программы требовали много внимания для запроса данных и отправки их по электронной почте. Сообщество росло и требовалась более эффективная система. Скотт Куровски (Scott Kurowski) ответил на эту потребность созданием PrimeNet в своей компании Entropia, пионера распределенных вычислений. Без помощи Скотта не было бы возможности расширения сети и привличения тысяч людей для вычисления чисел.

В дальнейшем Джордж продолжил развитие программы prime95 с появлением новых процессоров от Intel и AMD. Новые иснструкции позволили повысить скорость вычислений и общую продуктивность программы. Сейчас программа оптимизирована для современных процессоров, но так же может продолжать работать и на старых системах.

Последнее число с номером 51 (на момент публикации) найдено в декабре 2018 Патриком Лароче (Patrick Laroche).

Для участия в проекте достаточно установить и настроить программу. Программа не требовательна к ресурсам: надо процессор с частотой не ниже 1,4 Гигагерца для поиска чисел или 1 Гигагерц и выше для помощи в поиске чисел и проверке уже найденных. Также нужен доступ в интернет для получения данных и отправки результатов на сервер. Ещё необходимо время и терпение :)

Зачем участвовать?

Сложный вопрос :) Каждый решает для себя:

  • Кто-то хочет принести пользу науке, ведь эти числа используются в криптографии, теории чисел и генераторах случайных чисел;
  • Кто-то соревнуется в том, кто больше подарит ресурсов науке;
  • Кто-то хочет вписать своё имя в историю, найдя новое большое число;
  • А кто-то хочет заработать денег: можно получить денежный приз за нахождение числа!

Как подключиться

Есть два способа:

  • Подключиться и просто подарить науке свои ресурсы;
  • Зарегистрироваться, подключиться, вступить в команду и участвовать в соревновании “какая команда подарит ресурсов больше”.

Для первого варианта достаточно скачать программу, пройти простую минимальную настройку и запускать компьютер при загрузке.

Для второго варианта:

  • Скачайте программу для вашей операционной системы;
  • Распакуйте архив в каталог/папку;
  • Зайдите на сайт и зарегистрируйтесь;
  • Запустите программу, чтобы начать настройку.

Настройка

Windows

Windows версия программы запускается в виде оконного приложения. Для настройки задаст несколько вопросов, более подробно вопросы и ответы вы можете прочитать в настроке под Linux:

  • Нажимаем “Join Gimps” если хотите присоедениться к рассчётам:
    Настройка программы для GIMPS под Windows

  • Здесь вводим id пользователя (с которым зарегестрировались) и название компьютера
    Настройка программы для GIMPS под Windows

  • Сколько времени будет работать компьютер в часах.
    Настройка программы для GIMPS под Windows

  • Настройка ограничений ресурсов. Можно нажать “ok”.

Настройка программы для GIMPS под Windows

  • Здесь спрашивает сколько “рабочих запускать”:
    Настройка программы для GIMPS под Windows

Linux, MacOs, FreeBSD

Программа задаст несколько вопросов:

  • Join Gimps? (Y=Yes, N=Just stress testing) (Y): Нажимаем ввод, если хотите присоедениться к расчётам. N - проверить ваш компьютер на стресс-тесте;
  • Use PrimeNet to get work and report results (Y): - нажмите ввод;
  • Your user ID or “ANONYMOUS” (ANONYMOUS): - здесь введите инкнейм, под которым зарегистрировались на сайте. Это нужно для того, чтобы принимать участие в соревновании. Иначе вы станите безликим анонимусом :)
  • Optional computer name: - задайте имя компьютера. Это может быть полезно, когда вы будете под одним логином использовать несколько компьютеров;
  • Computer uses a dial-up connection to the Internet (N): - пережитки прошлого, когда для выхода в интернет надо было звонить по телефонной линии. Нажимайте ввод;
  • Use a proxy server (N): - если хотите использовать прокси сервер, то введите Y. В остальных случаях нажмите ввод;
  • Output debug info to prime.log (0=none, 1=some, 2=too much) (0): - спрашивает, нужно ли выводить отладочную информацию. Нажмите ввод, чтобы не программа выводила;
  • Accept the answers above? (Y): - принять все ответы, которые вы дали ранее. Если всё ввели правильно, то нажмите ввод;
  • Hours per day this program will run (24): - сколько будет работать программа в день. Можно ввести примерное значение. Эти данные будут использоваться для расчёта времени окончания расчёта задачи;
  • Программа выдаст характеристики процессора. Далее спросит про правильность введённых данных “Accept the answers above? (Y):”. Нажмите ввод;
  • Temporary disk space limit in GB/worker (6.000000): - спрашивает, сколько диска в Гигабайтах на работника можно занять для сохранения временных данных. Если у вас немного места, то поставьте 1;
  • Daytime P-1/P+1/ECM stage 2 memory in GB (0.300000): - сколько можно занять оперативной памяти днём в Гигабайтах;
  • Nighttime P-1/P+1/ECM stage 2 memory in GB (0.300000): - сколько памяти можно занять ночью в Гигабайтах;
  • Upload bandwidth limit in Mbps (0.250000): - сколько интернет канала можно занять для отправки данных;
  • Upload large files time period start (00:00): - с какого времени можно закачивать большие файлы с данными;
  • Upload large files time period end (24:00): - до какого времени можно закачивать большие файлы с данными;
  • Download limit for certification work in MB/day (40): - какой предел в Мегабайтах в день можно скачивать для получения задания;
  • Skip advanced resource settings (Y): - пропустить расширенные настройки? Нажмите ввод;
  • Accept the answers above? (Y): - Опять спрашивает, правильно вы ввели даные или нет;
  • Number of workers to run (3): - Сколько “рабочих” запустить? Программа сама смотрит на количество ядер и предлагает наилучший вариант. Каждый “рабочий” делает свою задачу;
  • На этом шаге программа спрашивает, какой тип работы надо выполнять. Пока не уверены, введите 0.
    Use the following values to select a work type:
    0 - Whatever makes the most sense
    150 - First time prime tests
    152 - World record sized numbers to prime test
    151 - Double-check prime tests
    2 - Trial factoring
    4 - P-1 factoring
    153 - 100 million digit numbers to prime test
    160 - First time PRP on Mersenne cofactors
    161 - Double-check PRP on Mersenne cofactors
    5 - ECM for first factors of Mersenne numbers
    8 - ECM on Mersenne cofactors
    6 - ECM on Fermat numbers
    1 - Trial factoring to low limits

Options for worker #1

Type of work to get (0):

  • CPU cores to use (multithreading) (4): - сколько ядер процессора использовать. Рекомендуем оставлять как минимум одно ядро для операционной системы и других программ;
  • Здесь спрашивает данные для следующего “рабочего”.
  • Get occasional proof certification work (Y): - нажмите ввод;
  • Accept the answers above? (Y) - Опять спрашивает, правильно вы ввели даные или нет;

Всё, настрока окончена! Программа начинает расчёты.

Видеокарта

Видеокарты очень хорошо подходят для сложных вычислений, что доказал майнинг криптовалют. Но зачем тратить ресурсы и электроэнергию впустую? Для видеокарт создана программа, но пока она сложна в настройке и подходит не всем видеокартам. Как только мы разберёмся с её настройкой, то опубликуем новость об этом и дополним этот пост.

Как присоединиться к команде citizenscience.ru

В проекте GIMPS есть команды. Некоторые поддерживают ВУЗы различных стран, другие - независимые, собраны самими участниками. Вы можете вступить в любую из команд, которые принимают к себе участников.
Чтобы вступить в команду, надо перейти на (страницу)[https://www.mersenne.org/jteam/], справа в таблице будут кнопки “Join”. После нажатия вы становитесь участником выбранной команды.
Если хотите присоединиться к нашей команде, то найдите на странице с помощью поиска (ctrl+f) “citizenscience.ru” (без кавычек) и нажмите кнопку Join справа.
Мы рады всем участникам! Изменения в составе и позиции в рейтинге команд автоматически отображаются на главной страницы сайта.