Pull to refresh

Реализация алгоритма BFS на GPU

Reading time8 min
Views12K

Аннотация


В данной статье хочу рассказать как можно эффективно распараллелить алгоритм BFS — поиск в ширину в графе с использованием графических ускорителей. В статье будет приведен подробный анализ полученного алгоритма. Вычисления выполнялись на одном GPU GTX Titan архитектуры Kepler.

Введение


В последнее время все большую роль играют графические ускорители (GPU) в не графических вычислениях. Потребность их использования обусловлена их относительно высокой производительностью и более низкой стоимостью. Как известно, на GPU хорошо решаются задачи на структурных сетках, где параллелизм так или иначе легко выделяется. Но есть задачи, которые требуют больших мощностей и используют неструктурные сетки. Примером такой задачи является Single Shortest Source Path problem (SSSP) – задача поиска кратчайших путей от заданной вершины до всех остальных во взвешенном графе. Решение данной задачи рассмотрено мной в этой статье. Вторым примером задачи на неструктурных сетках является задача Breadth First Search (BFS) — поиска в ширину в неориентированном графе. Данная задача является основной в ряде алгоритмов на графах. Также она немного проще, чем поиск кратчайшего пути. На данный момент алгоритм BFS используется как основной тест для рейтинга Graph500. Далее рассмотрим, как можно использовать идеи решения задачи SSSP в задаче BFS. Про архитектуру GPU компании Nvidia и об упомянутых алгоритмах уже много написано, поэтому в этой статье я не стану дополнительно писать про это. Так же, надеюсь, что понятия warp, cuda блок, SMX, и прочие базовые вещи, связанные с CUDA читателю знакомы.
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments7

Google на время снимает ограничения в Chrome 80 на передачу Cookie между сайтами, не использующими HTTPS

Reading time3 min
Views7.8K


3 апреля 2020 года Джастин Шух (Justin Schuh), директор отдела Chrome Engineering, сообщил в корпоративном блоге Chromium Blog о том, что Google на неопределенное время снимает ограничения в Chrome 80 на передачу Cookie между сайтами, не использующими HTTPS.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments11

Присматриваемся к одноплатникам на RISC-V, обзор модуля Sipeed Lichee RV на процессоре Allwinner D1

Reading time20 min
Views24K
Sipeed Lichee RV

Одноплатные компьютеры на RISC-V процессоре сравнительно новое веяние. Поднебесная активно работает над снижением зависимости от западных информационных систем и технологий, именно поэтому новая открытая архитектура RISC-V одна из ключевых ставок Китая. Для продвижения в массы китайский чипмейкер Allwinner на базе ядра Alibaba/T-Head Xuantie C906 RISC-V разработал процессор Allwinner D1 и упрощенную модификацию Allwinner D1s. На сегодня разработано несколько одноплатников на RISC-V процессоре, и в первенство по массовости вырвалась компания Sipeed с модульным компьютером Система-на-Модуле Lichee RV с 512 Мб ОЗУ всего за $16.90, работающим на Linux. Разработчик может спроектировать несущую плату для данного модуля, добавив необходимые периферийные устройства и разъемы. В результате получится решение максимально подготовленное для себя. Данный модуль предназначен для создания интеллектуальных информационных систем, терминалов, роботов, и т.д. В первой части рассмотрим архитектуру процессора, возможности модуля, дистрибутивы, программное обеспечение. Во второй части детально рассмотрим порты и интерфейсы для программирования, напишем программы на Python и C#.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments37

Выжимаем максимум из графических калькуляторов: игры на TI-83

Reading time4 min
Views30K

В 80-х и 90-х не каждому ребёнку родители покупали Game Boy. Я был одним из таких детей, и оставался единственным на игровой площадке, у кого не было GB.

Вместо консоли у меня был графический калькулятор. Мой отец горел сильным желанием с детства готовить меня к SAT. Поэтому я пользовался TI (Texas Instruments) 83 и ПО для Windows, необходимым для синхронизации калькулятора с компьютером. Предполагалось, что я буду использовать ПО для скачивания учебных программ и сохранения резервных копий хранимых в калькуляторе результатов.

Но вместо этого я играл на нём в игры. Даже тогда уже существовали хранилища монохромных видеоигр с низким разрешением, написанных специально для графических калькуляторов Texas Instruments. Большинство из них было отстойными (да, Drug Warz, я имею в виду тебя), но некоторые оказались на удивление хорошими, учитывая особенности платформы.
Total votes 55: ↑55 and ↓0+55
Comments16

Создание платформера для виртуальной консоли TIC-80

Reading time16 min
Views13K

8 Bit Panda, игра для вымышленной консоли TIC-80.

Это пост о том, как я написал 8-bit panda, простой платформер в классическом стиле для вымышленной консоли TIC-80.

Поиграть в готовую игру можно здесь.

Если вы любитель ретро-игр и вам нравится программирование, то есть вероятность, что вы уже знакомы с последним трендом: вымышленными консолями. Если же нет, то стоит посмотреть на их самых известных представителей: PICO-8 и TIC-80.

Я выбрал TIC-80, потому что она бесплатна и активно разрабатывается, имеет более широкое соотношение сторон экрана (240x136), чем PICO-8 и может выполнять экспорт на множество платформ, в том числе HTML, Android и двоичные файлы для PC.

В этой статье я расскажу, как я написал для TIC-80 простой платформер 8 Bit Panda.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments2

Google полностью пропустит выпуск Chrome версии 82 — после релиза Chrome 81 будет Chrome 83

Reading time3 min
Views5K


Google полностью пропустит выпуск Chrome версии 82, после стабильного релиза Chrome 81 будет выпущен Chrome 83. 22 марта 2020 года об этом рассказал Джейсон Керси (Jason Kersey), представитель группы разработчиков браузера Google Chrome.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments3

Опрос Oracle: 82 % респондентов считают, что роботы могут помочь в карьере лучше людей

Reading time12 min
Views1.1K

13 стран, иными словами 14 639 рядовых и руководящих сотрудников, руководителей отделов кадров и руководителей компаний приняли участие в ежегодном опросе Oracle и Workplace Intelligence о роли искусственного интеллекта на рабочем месте.

Свой опрос Oracle смело сравнивает с опросом мирового масштаба, а его результаты поражают, качественно отличаясь от результатов 2020 года. На обложке вы видите количество людей в процентах по странам, которые хотят, чтобы технологии помогали им определять будущее. Под кат приглашаем за подробностями, пока у нас начинается флагманский курс Data Science.

Читать далее
Total votes 7: ↑5 and ↓2+3
Comments1

Tesla рассказала об архитектуре чипа D1 для суперкомпьютера Dojo

Reading time4 min
Views2K

Tesla поделилась подробностями о собственном процессоре D1, который станет основой ИИ-суперкомпьютера Dojo. Компания рассказала об архитектуре, устройстве и возможностях нового чипа.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

Критическая уязвимость CVE-2024-31497 в PuTTY версий от 0.68 до 0.80 позволяет провести компрометацию закрытого ключа

Reading time3 min
Views6.4K

Разработчики клиента для различных протоколов удалённого доступа сообщили о критической уязвимости CVE-2024-31497 в PuTTY версий от 0.68 до 0.80, которая позволяет провести компрометацию закрытого ключа. В стабильной версии PuTTY 0.81 эта проблема устранена.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments4

Tesla представила собственный аппаратный ускоритель нейросетей Dojo D1

Reading time2 min
Views5.3K

Tesla представила чип Dojo D1 для обучения моделей искусственного интеллекта внутри своих центров обработки данных. Он выполнен на 7-нм техпроцессе и имеет вычислительную мощность 362 терафлопс.

Читать далее
Total votes 21: ↑21 and ↓0+21
Comments2

Nikon D800 анонсирован, где же Canon 5D Mark III?

Reading time9 min
Views3.6K
Почти неделя прошла от анонса полнокадровой зеркалки Nikon D800. Почти всё, что ждали никонианцы почти год, в новом флагмане (полу)профессиональной линейки Никона воплощено. Японцы обещаю начать продажи нового чуда в середине марта. Во что, правда, верится с некоторым скрипом, после истории с задержкой выхода D7000.

А что же Canon?


Canon EOS 5D Mark III, анонс которого ждали не менее долго, так и не вышел из под покрова тайны. Придется брать дело в свои руки. Давайте пофантазируем, чем производители ремней с красной каймой, смогут ответить производителям ремней с каймой желтой.
Читать дальше →
Total votes 37: ↑22 and ↓15+7
Comments31

Пишем интерпретатор BASIC в стиле 80-х

Reading time22 min
Views9.3K


В течение нескольких лет я работала над личным проектом создания (а на самом деле исследования) «фальшивого эмулятора», то есть написанного на JavaScript эмулятора никогда не существовавшего компьютера. Эта машина должна была стать данью памяти восьми- и шестнадцатибитным компьютерам 1980-х и 90-х.

Однако мне нравятся сложности: в этой машине ещё и использовался новый набор инструкций. Он похож на наборы, применявшиеся в ту эпоху, но немного проще в работе. Так родился Retroputer. В течение нескольких лет эмулятор расширял свои возможности и совершенствовался, но, скорее всего, он никогда не будет «закончен» (в конце концов, это ведь личный проект-исследование).

Когда появился @bbcmicrobot, я захотела создать нечто подобное для Retroputer. Мои навыки разработки на JS в основном ограничивались фронтендом, поэтому это будет отличным поводом получить опыт бэкенда. Только есть одна проблема: Retroputer может понимать только собственный язык ассемблера. Пока у него нет поддержки BASIC.

Так я и пришла к созданию интерпретатора BASIC в стиле 80-х, то есть полностью на языке ассемблера, как его тогда и писали. Я решила, что стоит поделиться своей работой, потому что нам не часто приходится погружаться в области, столь далёкие от привычных абстракций. Мой повседневный инструмент (JavaScript) делает многие аспекты тривиальными, и иногда это даже кажется магией. Понимание самого нижнего уровня процессов часто помогает в понимании этих абстракций.

Итак, давайте приступим.
Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments5

Собираем DOS 2.11 из исходников 80-х годов

Reading time22 min
Views12K
Успешно завершив сборку ядра PC DOS 1.1 из исходного кода, я решил, что повторю то же самое с исходным кодом DOS 2.11, опубликованным Музеем компьютерной истории (CHM). В статье представлены заметки, сделанные мной в процессе приведения в форму опубликованного исходного кода. Это оказалось намного сложнее, чем сборка DOS 1.1, и на то было две причины.

Во-первых, опубликованный исходный код DOS 2.11 гораздо более масштабен и содержит в себе исходный код различных утилит (CHKDSK, DEBUG, EDLIN, SYS, и т. д.). Во-вторых, Музей, к сожалению, при публикации кода создал небольшую путаницу и разбираться в отдельных его частях было не так уж легко.


Запуск DOS 2.11 в стиле Microsoft
Читать дальше →
Total votes 50: ↑50 and ↓0+50
Comments11

Более чем 80 средств мониторинга системы Linux

Reading time12 min
Views315K
Ниже будет приведен список инструментов мониторинга. Есть как минимум 80 способов, с помощью которых ваша машинка будет под контролем.



1. первый инструмент — top

Консольная команда top- удобный системный монитор, простой в использовании, с помощью которой выводится список работающих в системе процессов, информации о этих процессах. Данная команда в реальном времени сортирует их по нагрузке на процессор, инструмент предустановлен во многих системах UNIX.
читать дальше
Total votes 94: ↑82 and ↓12+70
Comments68

Готовимся к собеседованию: 82 вопроса по MongoDB

Reading time17 min
Views7.4K

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

Читать далее
Total votes 18: ↑9 and ↓90
Comments3

Минпромторг: доля российской медицинской техники в стране должна составить 80% к 2030 году

Reading time2 min
Views2.6K

Агентство ТАСС со ссылкой на совещание Министерства промышленности и торговли с производителями медицинской техники сообщает, что доля отечественных медизделий достигнет в России 50% к 2024 году и 80% — к 2030 году. Для увеличения конкурентоспособности российской медтехники Минпромторг, Минфин и Минздрав намерены скорректировать налоговые режимы.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments19

Магазинные крысы, видиоты и игроманы: пропаганда вреда видеоигр, шедшая в 80-х годах

Reading time7 min
Views15K

На этой картинке из газеты The Jackson Sun от 4 августа 1980 содержится намёк на игру Space Invaders и вредное «привыкание к ней»

Ненавистники видеоигр. Если вы думаете, что сейчас они свирепствуют, то вам просто недостаточно лет для того, чтобы вы вспомнили порицание и отвращение, с которым нам, геймерам 80-х, приходилось сталкиваться из-за таких простых игр, как Pac-Man на аркадных автоматах.

Сегодня видеоигры – вещь привычная, и когда они есть повсюду и в круглосуточном доступе, сложно представить, что в 80-х было такое время, когда люди искренне презирали видеоигры и другие передовые технологии – однако, поверьте, борьба на этом фронте шла нешуточная. Полагаю, что люди такого же настроя, если не того же поколения, что проклинали телевидение, рок-н-ролл и Элвиса в 50-х, в 80-х пытались запретить залы игровых автоматов и видеоигры. Ну даже если это не так, то у них, по крайней мере, был сходный уровень невежества.
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments60

Сравнили 80-ядерный ARM-процессор Ampere Altra с AMD EPYC и довольны результатом. Протестируйте и вы

Reading time8 min
Views19K

Привет, Хабр! Меня зовут Максим, я работаю тестировщиком оборудования в Selectel Lab. В нашей лаборатории мы изучаем новое железо в экспериментальных сборках, а также предлагаем его на тест клиентам Selectel.

На этот раз к нам попал сервер GIGABYTE E252-P30 с 80-ядерным процессором от Ampere Altra Q80-30. Этот ARM-процессор уже отметился характеристиками: процессоры с таким числом ядер с частотой 3.0 ГГц при TDP в 210 Вт не предлагает ни один «звездный» вендор.

Прогнали этот сервер через ряд тестов и сравнили с наиболее близким по характеристикам AMD EPYC 7513. Под катом — результаты бенчмарков и предложение протестировать процессор бесплатно.
Читать дальше →
Total votes 54: ↑53 and ↓1+52
Comments11

How to Learn Python FREE in 8-Week: The 80/20 Learning Plan

Level of difficultyEasy
Reading time6 min
Views2.2K

I know it can be hard to learn a new programming language. In this article, I want to share my plan with you. It's a way to learn Python in eight weeks using videos, articles, and practice exercises. Exercises are very important because I think the best way to learn is by doing them.

I've created this learning plan for people who don't have much free time. You only need about 30-50 minutes a day and consistency. In my plan, I use the 80/20 principle, which will help you learn the most important things first and improve the rest through practice.

For those who read this article to the end, I have prepared a learning tracking sheet to help you track your progress.

Read more
Total votes 2: ↑2 and ↓0+2
Comments0
1
23 ...