Метка «распределённые вычисления» - 2

Добрый день!

Задумывались ли Вы когда-нибудь о том, как Вы можете внести свой персональный вклад в борьбу с онкологическими заболеваниями, СПИДом или малярией?

Корпорация IBM предоставляет Grid-технологии для проведения глобальных исследовательских проектов!

World Community Grid: сеть распределенных вычислений
Читать полностью »

Прошло всего три недели с момента, как мы написали первую статью, а у нас уже столько новостей, что писать о них можно целый день! Но прежде чем загрузить вас с низкого старта техническими деталями, я приглашаю вас начать игру:

Квест для программистов: перезагрузка
Читать полностью »

В 1999 году проект SETI@home предложил пользователям предоставлять ресурсы своих персональных компьютеров для анализа радиосигналов из космоса в целях поиска внеземного разума. В рамках этого проекта в университете Berkley была разработана платформа BOINC (Berkeley Open Infrastructure for Network Computing), на основе которой впоследствии были запущены уже упомянутый SETI@home, ABC@home (доказательство abc-гипотезы), Climateprediction.net (улучшение климатических моделей), LHC@home (симуляция столкновений высокоэнергетических частиц) и другие.

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

С этими мыслями я взялся за написание Kaylee.

Читать полностью »

Под капотом квеста для программистов
В настоящий момент группа разработчиков Luxoft работает над новым проектом – разработкой online квеста, который позволит программистам не только протестировать свои скиллы, но и окунуться в атмосферу триллера. Подробно о самой игре мы вам расскажем немного позже, 07.10.2012, когда состоится официальный запуск, а сейчас мы хотели бы поделиться с вами чисто техническими подробностями и проблемами, которые мы встретили во время процесса разработки и их решениями.
Самой главной проблемой проекта стало обеспечение безопасности серверов во время игры, т.к. суть квеста заключается в том, чтобы игроки, выполняя задания, выкладывали на сервер свои программы, где они будут впоследствии проверяться. Т.е., запуская программы, мы должны понимать, что они были написаны для решения поставленной задачи и не являются вредоносными файлами.
Читать полностью »

Недавно вышла книга The dRuby book — distributed and parallel computing with Ruby (перевод японской книги, написанной автором самой библиотеки). В этой статье я попытаюсь дать обзор глав книги, касающихся библиотеки DRb. Если вам захочется ознакомиться с темой более подробно, книгу можно купить или скачать. Сразу скажу, что я не буду говорить в этом посте не о синхронизации потоков, ни о библиотеке Rinda.

Предположим, что вы пишите систему, которая работает с более чем одним процессом. Например, у вас есть веб-сервер, который в фоновом режиме запускает задачи, работающие долгое время. Или вам просто нужно обеспечить пересылку данных из одного процесса в другой и координировать их. Для таких ситуаций и нужна библиотека DRb. Она написана целиком на Ruby и включена в стандартную библиотеку, поэтому начать работать с ней можно моментально. Для её подключения достаточно написать require 'drb'

Достоинства библиотеки DRb большей частью проистекают из динамичности самого языка Ruby.
Во-первых, при затрате минимальных усилий на подготовительном этапе, дальше вы работаете с объектами не задумываясь, где они расположены: в одном процессе или в другом. Библиотека полностью маскирует от вас все технические детали.
Во-вторых, вы не обязаны жестко прописывать интерфейс. Любой руби-объект может выставить свой интерфейс наружу — таким образом вы можете как воспользоваться функциональностью одного из стандартных классов типа Hash или Queue, а можете сделать свой класс с любым интерфейсом. Кроме того вам ничто не мешает менять интерфейс прямо в процессе исполнения, и даже использовать method_missing для обработки любых запросов. И уж разумеется, обновление интерфейса сервера вообще никак не влияет на клиента, если тот не вызывает методы, которые изменили сигнатуру или поведение. Таким образом сервер и клиент максимально независимы.
И наконец, клиент даже не обязан знать классы объектов, которые ему возвращает сервер, он может их использовать и без этого. Таким образом сервер волен скрыть столько много деталей, сколько ему угодно.
Но, конечно, есть и подводные камни, и их предостаточно. К счастью, dRuby несложен в понимании, ну а понимание его устройства позволяет большей части проблем просто не допускать. Документация к этой библиотеке, к сожалению, не проясняет множества моментов, поэтому статья будет интересна и новичкам, и людям уже поработавшим с библиотекой.

Читать полностью »

Одна из моих любимых тем в программировании – эволюционные вычисления и генетические алгоритмы в частности. Пару лет назад я поднимал эту (в целом уже заезженную) тему на Хабре, но сейчас глядя на то видео немного стыдно – слишком уж туманно и сумбурно было объяснение.
Сегодня я постараюсь объяснить генетические алгоритмы проще и нагляднее, а заодно рассказать вкратце о прототипе очень простого JavaScript-фреймворка для распределенных генетических вычислений degas.js. В двух словах – degas.js запускает генетический алгоритм в виде «треда» в браузере клиента используя web workers и обменивается информацией о полученных в ходеЧитать полностью »

image
Приветствую Вас, уважаемые пользователи Geektimes! В данном посте, речь пойдет о замечательной идее реализованной в проекте и скрывающейся под именем Gridcoin Research. Пост рассчитан в первую очередь для тех, кого интересует альтернативные пути развития криптовалют.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js