LINUX.ORG.RU

Избранные сообщения asaw

В HP создали монстра с 160ТБ оперативной памяти — прототип ещё более внушительной машины

Форум — Talks

Система работает под управлением специальной версии операционной системы Linux, оптимизированной для работы с 2-процессорными конфигурациями на чипах ThunderX2 — втором поколении интегрированных «систем в чипе» на ядрах ARMv8-A производства компании Cavium. Внутренние коммуникации обеспечиваются с помощью фотоники и оптических интерфейсов с использованием оптического коммутационного модуля X1.

Все 160 ТБ оперативной памяти прототипа вычислительной системы проекта The Machine распределяется в системе из 40 физических узлов с интерконнектом на базе высокопроизводительного протокола обмена данными.

По мнению специалистов компании, разработанная в HPE вычислительная архитектура способна масштабироваться до практически безграничных объемов используемой памяти.

В качестве пограничного «почти неограниченного» объема памяти в компании называют предел в 4,096 йоттабайт (терабайт терабайтов).

Вычислительная архитектура класса Memory-Driven Computing ставит в центре системы не процессор, а оперативную память. Благодаря устранению неэффективности взаимодействия между памятью, СХД и процессорами, характерной для современных вычислительных систем, архитектура Memory-Driven Computing сокращает время вычислений сложных задач на порядки.

Подробнее: http://www.cnews.ru/news/top/2017-05-19_hpe_razognala_the_machine_do_160_tb_o...

PS новость делать лень, но по-моему стоит

 , , , ,

asaw ()

Команда Debian об аресте Дмитрия Богатова

Новости — Linux в России
Группа Linux в России

Пресс-релиз команды Debian

Проект Debian обеспокоен тем, что один из участников Проекта, Дмитрий Богатов, был арестован российскими властями.

Дмитрий — преподаватель математики и активный участник Debian. В качестве сопровождающего Debian он участвовал в группе Debian Haskell, также он сопровождает несколько пакетов программ для командной строки и ряд системных инструментов.

Мы ожидаем дальнейшие подробности касательно его дела и надеемся, что оно будет справедливо рассмотрено, а все предусмотренные законом процедуры будут соблюдены.

При этом Проект Debian принял меры для обеспечения безопасности своих систем путём удаления ключей Дмитрия, поскольку они могли быть скомпрометированны.

Проект Debian благодарит Дмитрия за его отличную работу и стойкую преданность Debian и Свободному ПО. Мы надеемся, что он как можно скорее получит возможность вернуться к своей деятельности. Мы выражаем ему и его семье безоговорочную поддержку.

>>> Подробности

 ,

linuks ()

Tor в этой стране

Форум — Talks

Многие, наверное, уже слышали эту историю: «доблестные» органы схватили преподавателя математики и с третьего раза засадили его в СИЗО. Но, как оказывается, это связано с Линуксом:

В основу обвинений легли записи на форуме для системных администраторов sysadmins.ru («Сисадмин.ру») пользователя по имени Айрат Баширов. Он создал тему «Требуем системных изменений в стране!» и оставил несколько записей, которые правоохранительные органы расценили как призыв к организации массовых беспорядков и к терроризму. Следственный комитет считает, что Богатов использовал «серверы, находящиеся на территории иностранных государств», чтобы замести следы. Одновременно обвинение утверждает, что информация размещалась с IP-адреса Богатова. По словам адвоката, записи были выложены с нескольких IP-адресов — и лишь один из них принадлежал Богатову. Мать математика утверждает, что ее сын в момент публикации записи шел с женой домой из магазина.

Факты, добытые следователями, могут не противоречить словам адвоката и матери Богатова, если Айрат Баширов, которого хотели поймать правоохранительные органы, пользовался анонимной сетью Tor. Эта сеть создает зашифрованный канал связи с использованием нескольких случайным образом выбранных серверов и скрывает настоящий IP-адрес пользователя. Владелец сайта видит вместо него IP-адрес exit node — выходного узла Tor, последнего сервера в цепочке создания анонимности. Всего сейчас в сети Tor чуть больше семи тысяч узлов, из них лишь около 900 являются exit node.

Один из таких exit node, по всей видимости, запустил у себя дома Богатов. Об этом можно судить на основании того, что свои имя, фамилию, электронный адрес он оставил в описании этого узла. Ранее он говорил в суде, что является «разработчиком — адептом свободного программного обеспечения».

Таким образом, некий пользователь Айрат Баширов, возможно, совершенно никак не связанный с Богатовым, 29 марта 2017 года мог запустить Tor-бразуер и случайно подключиться к российскому узлу анонимной сети Tor, который принадлежал арестованному 10 апреля математику.

https://meduza.io/feature/2017/04/10/kak-arestovali-matematika-dmitriya-bogat...

Собственно, понятно, что запускать exit ноды тора в этой стране уже давно не имеет большого смысла. А теперь становится понятно, что это ещё и небезопасно...

Интересно является ли Дмитрий Богатов пользователем ЛОРа, если он адепт СПО?

UPD: https://www.reddit.com/r/debian/comments/64qat1/debian_maintainer_dmitry_boga...

UPD2: http://stackoverflow.com/users/772944/kaction https://www.gnu.org/software/thales/ http://sinsekvu.github.io/pages/about.html

UPD3: подробная статья в «Медиазоне», включая интервью с «Айратом Башировым» и даже RMS: https://zona.media/article/2017/20/04/no-church-in-the-wild

https://freebogatov.org/

 , , ,

asaw ()

Сопрограммы: как реализовать sleep_for/sleep_until в сопрограмме?

Форум — Development

Допустим, я хочу реализовать сопрограмму, в логике которой имеется ожидание, которое эквивалентно http://en.cppreference.com/w/cpp/thread/sleep_until Имеется ли готовый шаблон для такого решения? Если тупо получать текущее время в сопрограмме и делать yield(), если нужный момент не наступил, то получится аналог spinlock - управление будет передаваться по кругу до тех пор, пока для одной из сопрограмм не наступит нужное время. Этого хотелось бы избежать, то есть возвращать управление сопрограмме в нужный момент времени, а неиспользованное время отдавать ОС с помощью того же sleep_until. Высокого разрешения по времени и какой-то большой точности при этом не требуется - сотых долей секунды хватит с головой.

P.S. Подразумевается Boost.Coroutine, но можно и что-то другое, только не экзотическое.

 ,

asaw ()

Шаблонов магия

Форум — Development

Вопрос отсюда. Есть такой вот код, который работает:

class Base {
protected:
    template <class T, class... Args>
    std::function<void(Args...)> bind_this_(void (T::*f)(Args...))
    {
        return [this, f](Args&&... args) { (static_cast<T&>(*this).*f)(std::forward<Args>(args)...); };
    }
};

class A : public Base {
    void foo(int arg1, int& arg2, std::string& str) {}
public:
    std::function<void (int, int&, std::string&)> get_foo_functor() { return bind_this_(&A::foo); }
};

A::get_foo_functor() привязывает к A::foo() указатель на экземпляр A (который неявный this) и возвращает обертку, которую можно использовать как функциональный объект с аргументами, такими же как у A::foo().

Вопрос 1: можно ли как-то обойтись без лямбды? Вопрос 2: как сделать шаблонный класс X с оператором operator()(), который, будучи инстанцироваьным с нужными параметрами, возвращал бы такой же функтор. Типа вот такого:

A a;
X< ... > foo_functor_producer(/* например */ &a, &A::foo);
auto ff = foo_functor_producer(); //< возвращает std::function<void (int, int&, std::string&)> 

 

asaw ()

Обновился инструмент для работы с агентами в C++: SObjectizer 5.5.5

Форум — Development

SObjectizer — это небольшой фреймворк для упрощения разработки многопоточных приложений на C++. SObjectizer позволяет создавать объекты-агенты, которые взаимодействуют друг с другом только посредством асинхронных сообщений. Сам SObjectizer берет на себя задачи диспетчеризации сообщений и предоставление агентам рабочего контекста для обработки получаемых сообщений.

Проект живет на SourceForge, распространяется под трехпунктной BSD-лицензией.

Версию 5.5.5 можно взять либо из секции Files на SF, либо из Svn-репозитория, либо из зеркала на GitHub.

Если говорить кратко, то в версии 5.5.5 появилось следующее:

  • вспомогательные шаблонные методы introduce_coop и introduce_child_coop, упрощающие создание и регистрацию коопераций;
  • возможность использования туплов в качестве типов сообщений;
  • фильтры для сообщений, которые позволяют анализировать содержимое сообщений и отбрасывать те из них, которые не интересны агенту получателю;
  • несколько новых примеров.

Так же подготовлены две новые части серии презентаций “Dive into SObjectizer-5.5”, более подробно рассказывающие о состояниях агентов и кооперациях агентов (все имеющиеся презентации собраны здесь).

Если интересны подробности, то сюда.

Отдельная благодарность Алексею Сырникову, как за помощь в подготовке этого релиза, так и за поддержку зеркала SObjectizer на GitHub-е.

 , , ,

eao197 ()