Реальная история.
Это ссылка GitHub:
https://github.com/MeshachBlue/compushare/Это предложение:
CompuShare - Предложение
==============
Программа для использования GPU Bitcoin шахтеров "рабочие" что будет либо хэш или запустить "платить за итерацию" Монте-Карло в зависимости от платит больше в то время.
Будет ли в результате всемирного распределенного суперкомпьютера, который может быть способен работать 30 000 000 итераций в 1 минуту для стоимости $ 1.
Для клиентов
==============
Есть много [применения Монте-Карло] (
http://en.wikipedia.org/wiki/Monte_Carlo_method#Applications). Часто бывают чувствительные к времени приложения. Из-за [embarrisingly параллельны] (
http://en.wikipedia.org/wiki/Embarrassingly_parallel) Характер Монте-Карло итераций время, необходимое для кода для запуска прямо пропорционально количеству доступных ядер. Если достаточное количество GPU шахтеров запустить этот код СПАСАТЕЛЬНЫЕ операции могут быть проверены в вычислительном в течение нескольких минут, а не дни.
Это уже доступно для клиентов с помощью спот экземпляров Амазонки. Пример реализации описан [здесь] (
http://christopherpoole.github.io/static/pdfs/Poole%20et%20al.%20-%20Radiotherapy%20Monte%20Carlo%20simulation%20using%20cloud%20computing%20technology.pdf). Недостаток использования службы Amazon является то, что цена за экземпляр округляется до часа. "платить за итерацию" модель будет значительно пользу клиенту в течение текущей доступности.
Для работников
==============
Во-первых, больше Bitcoins для вычислительной бакса. Но самое главное работает код весь содержащийся в CompuShare, только файлы загружаются в геометрии файл, куча случайных семян количества генераторов и начальная траектория частиц. Ваш компьютер будет принимать эти начальные траектории и распространять их через геометрию с семенами случайных чисел, приведенных.
Трудность для шахтеров в том, что они, возможно, потребуется установить больше оперативной памяти в их добыче вышке.
Некоторые номера для заинтересованных
==============
Предположим, 1000 компьютеров онлайн подающим запросы вычислений на каждом из узлов управления. Предположим, каждый компьютер имеет GPU с 500 блоками обработки. Предположим, каждый блок обработки занимает 1 секунды, чтобы обработать итерации. Это означает, что этот кластер будет способен 30 000 000 итераций каждой минуты.
Предположим, компьютер работает на 400W, предположим, что цена электроэнергии составляет 15с / кВтч означает 1 минута вычисления будет стоить каждый компьютер 0.1C. Это означает, что исследователь нужно только заплатить чуть более $ 1 за минуту, чтобы получить доступ ко всем 1000 узлов.
Предполагая, сетевые накладные расходы означает, что есть 4-минутная задержка в передаче данных это означает, что за $ 1 этого исследователь сделал вычисление займет 5 минут, которые приняли бы дни на шесть процессорных ядрах локального суперкомпьютера.
Если дополнительный больной раком могут быть обработано из-за этого сэкономленное время, значение этого $ 1 огромно.
Да будет так - результаты Мозгового штурма
==============
Начнем с [Монте-Карло EXTREME] (
http://mcx.sourceforge.net/cgi-bin/index.cgi) Для бега Монте-Карло на графических картах.
CompuShare будет содержать в себе все исполняемого кода в качестве источника моды открытым. Только геометрия файлов и начальные траектории частиц будут загружены на рабочих компьютерах.
Эта сеть будет содержать три категории узлов, "ненадежный", "доверенный" а также "доверительное управление"/"управление", Ненадежный узел может стать доверенным путем заполнения 100 000 000 последовательных итераций без ошибок. Если доверенный узел делает ошибку он понижен до ненадежного узла. Доверенные узлы случайным образом дается возможность стать Managment узлов, если сеть узких мест (работа, как определить это). узлы управления становятся понижены в доверенные узлы, если они завершают три стандартных отклонения меньше сделок, чем среднее узлов управления в течение длительного периода времени. узлы управления получить "звезда" рейтинг от обоего рабочих и клиентов, которые декларируются ко всем узлам управления и обнародованные. Он также обнародован, если управление узлами гроссбух не в курс в течение продолжительного периода времени.
Сеть будет работать на доверенных узлов управления. Эти узлы:
* Получать, сортировать и сопрягать запросы вычислений
* Получать представленные файлы геометрии
* Итерация каждого новый файла геометрия для того, чтобы получить его вычислительные затраты (за исключение этой итерации и использовать его для проверки узлов)
* Распространять семена случайных чисел - у 1% эти дубликатов, выполняющиеся на доверенный узле - каждый набор данных оплаченных должен иметь по крайней мере один дубликат семени - все узлы (включая доверенные узлы) должен иметь 1% их расчеты проходят таким образом доверенным узлом.
* Запись среднее (время, необходимое для возвращения результата) / (вычислительная стоимость) для каждого узла управляется
* Принимать и удерживать частицы выхода, пока работник не будет выплачен
* Содержит регистр всех узлов меток и узлов управления рейтингами - большинство гроссбух объявляется истинным
* Доверенный узел управления будет конкурировать с другими доверенными узлами управления для управления сборов оплаченных - есть искренняя плата за управлением, чтобы покрыть вычислительные затраты на запуск узла управления - и платы 1% в конечном итоге заплатил работник для бега "повторяющиеся тесты",
У CompuShare содержит в себе хэширование кода Bitcoin так, что неработающие графические процессоры вернутся к хэшированию.
Клиенты представят свою геометрию и начальные траектории частиц в узел управления по своему выбору за небольшую плату авансом управлений объявленного узлом управления, на данный момент клиент может выбрать "самый дешевый" или "быстрый", Узел управления будет затем рассчитать вычислительные затраты этой геометрии и объявить ее "цена за-расчетной стоимости" ко всем узлам прослушивания. Слушание узлы бы их запрос на запуск кода и объявить, сколько ядер доступны в их GPU, они также будут иметь возможность быть платят меньше, если они пожелают. Узел управления будет затем присвоить заданное число итераций для каждого узла. Они будут взвешенными к представляет собой целое число, кратное количеству ядер в каждом узле. Способ назначения будет либо дешевым, то самый быстрый или самый быстрый, то самый дешевый в зависимости от выбора клиента. После того, как выходные траектории вычисленные они зашифрованы и возвращают в узел управления. На этом этапе узел управления объявляет клиенту платежный адрес и сумму, подлежащую выплате работнику. Клиент платит работник. Работник заявляет узел управления, что они были оплачены. Узел управления посылает расшифрованные затем повторно зашифрованные результаты клиенту.