Как стать автором
Обновить
271.74

Высокая производительность *

Методы получения высокой производительности систем

Сначала показывать
Порог рейтинга
Уровень сложности

FreeBSD + PostgreSQL: тюнинг сервера БД

Время на прочтение7 мин
Количество просмотров26K
Привет, Хабрсообщество!

Наверное, моя статья будет не интересна матерым сисадминам и покажется копипастом. Но я адресую ее тем, кто, как и я, будучи только разработчиком, впервые столкнулся с необходимостью еще и администрировать сервер, при этом решая задачи высоконагруженной БД. И чтобы гугл вас не проклял, постараюсь собрать в одном месте основные приемы для разгона сервера БД, которые мне успешно удалось реализовать.
Читать дальше →
Всего голосов 58: ↑52 и ↓6+46
Комментарии67

Компания OCZ представила два новых производительных накопителя на Computex 2011

Время на прочтение1 мин
Количество просмотров852


На Computex 2011 уже представлено много чего хорошего (гораздо больше, чем это освещено прессой, как обычной, так и Интернет-СМИ). Каждый день появляется все новая информация, так сказать «сводки с фронтов». Одна из таких сводок касается двух новых моделей накопителей, выпущенных компанией OCZ. Накопители получили название RevoDrive 3 X2 and RevoDrive Hybrid. Обе модели, к слову, основаны на PCI-Express x4 и контроллерах SandForce SF-2200.

Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии24

В Чикаго открылась современная автоматическая роботизированная библиотека

Время на прочтение2 мин
Количество просмотров2K


Помню, когда я был студентом, и приходил в читальный зал за книгой или журналом, иногда приходилось ожидать своего заказа в читальном зале по 30-40 минут и больше. Это хорошо, если у меня были все данные по книге, и я мог сделать заказ. Но если было известно только название и автор, нужно было идти в каталог, рыться там в картотеке, выписывать на листочек все данные (а каталог, кстати, расположен в другом корпусе института), и потом идти в читальный зал за своим заказом. Вполне могло оказаться, что каких-то данных нет, или книга выдана на руки, и тогда приходилось снова идти в каталог, искать что-то на замену. В общем, процедура та еще. И теперь я белой завистью завидую студентам Университета Чикаго, которые получили в свое распоряжение сверх-современную роботизированную библиотеку, способную найти и выдать заказ всего за пять минут.

Читать дальше →
Всего голосов 45: ↑42 и ↓3+39
Комментарии52

Поддержка GPU в математическом пакете MATLAB

Время на прочтение1 мин
Количество просмотров15K
За последние год-полтора создание кластеров и суперкомпьютеров на GPU стало новым трендом для высокопроизводительных систем. Это вполне имеет смысл, потому что графические процессоры прекрасно поддерживают параллельную работу и на некоторых задачах обладают производительностью гораздо выше, чем у бюджетных CPU.

В этом смысле вполне логичной выглядит новость, что в пакете программ математического моделирования MATLAB версии 2010b появилась нативная поддержка Nvidia CUDA (версия Compute Capability 1.3 или выше). Она включена в набор инструментов Parallel Computing Toolbox. Теперь распараллеливание команд осуществляется прямо из MATLAB и не нужно переписывать код на C++ или Fortran специально для CUDA.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии27

Истории

CUDA: аспекты производительности при решении типичных задач

Время на прочтение7 мин
Количество просмотров28K
Перед тем как начать переносить реализацию вычислительного алгоритма на видеокарту стоит задуматься — получим ли мы желаемый прирост производительности или только потеряем время. И несмотря на обещания производителей о сотнях GFLOPS, у современного поколения карт есть свои проблемы, о которых лучше знать заранее. Я не буду глубоко уходить в теорию и рассмотрю несколько существенных практических моментов и сформулирую некоторые полезные выводы.
Читать дальше →
Всего голосов 86: ↑84 и ↓2+82
Комментарии67

Высокопроизводительные вычисления: проблемы и решения

Время на прочтение12 мин
Количество просмотров32K
Компьютеры, даже персональные, становятся все сложнее. Не так уж давно в гудящем на столе ящике все было просто — чем больше частота, тем больше производительность. Теперь же системы стали многоядерными, многопроцессорными, в них появились специализированные ускорители, компьютеры все чаще объединяются в кластеры.
Зачем? Как во всем этом многообразии разобраться?
Что значит SIMD, SMP, GPGPU и другие страшные слова, которые встречаются все чаще?
Каковы границы применимости существующих технологий повышения производительности?

Введение


Откуда такие сложности?

Компьютерные мощности быстро растут и все время кажется, что все, существующей скорости хватит на все.
Но нет — растущая производительность позволяет решать проблемы, к которым раньше нельзя было подступиться. Даже на бытовом уровне есть задачи, которые загрузят ваш компьютер надолго, например кодирование домашнего видео. В промышленности и науке таких задач еще больше: огромные базы данных, молекулярно-динамические расчеты, моделирование сложных механизмов — автомобилей, реактивных двигателей, все это требует возрастающей мощности вычислений.
В предыдущие годы основной рост производительности обеспечивался достаточно просто, с помощью уменьшения размеров элементов микропроцессоров. При этом падало энергопотребление и росли частоты работы, компьютеры становились все быстрее, сохраняя, в общих чертах, свою архитектуру. Менялся техпроцесс производства микросхем и мегагерцы вырастали в гигагерцы, радуя пользователей возросшей производительностью, ведь если «мега» это миллион, то «гига» это уже миллиард операций в секунду.
Но, как известно, рай бывает либо не навсегда, либо не для всех, и не так давно он в компьютерном мире закончился. Оказалось, частоту дальше повышать нельзя — растут токи утечки, процессоры перегреваются и обойти это не получается. Можно, конечно, развивать системы охлаждения, применять водные радиаторы или совсем уж жидким азотом охлаждать — но это не для каждого пользователя доступно, только для суперкомпьютеров или техноманьяков. Да и при любом охлаждении возможность роста была небольшой, где-то раза в два максимум, что для пользователей, привыкших к геометрической прогрессии, было неприемлемо.
Казалось, что закон Мура, по которому число транзисторов и связанная с ним производительность компьютеров удваивалась каждые полтора-два года, перестанет действовать.
Пришло время думать и экспериментировать, вспоминая все возможные способы увеличения скорости вычислений.
Читать дальше →
Всего голосов 79: ↑79 и ↓0+79
Комментарии43

Исследователи достигли скорости передачи данных в 100 терабит/сек

Время на прочтение2 мин
Количество просмотров7.7K


Помнится, самое быстрое подключение к Сети в мире — у пожилой шведки. 75-летняя бабушка может использовать все преимущества ШПД, поскольку ее подключение к Интернету достаточно быстрое, чтобы использовать все преимущества Глобальной Сети — 40 Гбит/сек хватит для любой задачи. Правда, обычному пользователю о такой ширине канала остается пока только мечтать. Этой женщине повезло — ее сыном является Питер Лотберг, сотрудник Cisco. Однако даже такое скоростное подключение — ничто по сравнению с достижениями двух независимых групп исследователей из США и Японии, которые смогли поставить новый мировой рекорд скорости передачи данных — 100 терабит в секунду.

Читать дальше →
Всего голосов 57: ↑50 и ↓7+43
Комментарии88

[Перевод] Теперь поиск Twitter ещё в 3 раза быстрее

Время на прочтение6 мин
Количество просмотров3.1K
Мне всегда был интересен Ruby-on-Rails (RoR) и Twitter как яркий представитель платформы на этом framework. 6 апреля этого года в блоге команды Twitter появилась запись о полной смене поисковой платформы с RoR на Java. Под катом перевод о том, как это было.

Я готов жить с этим!
Всего голосов 63: ↑53 и ↓10+43
Комментарии36

Суперкомпьютеры: третья мировая гонка

Время на прочтение6 мин
Количество просмотров7.2K
Только что вернулся с конференции ПАВТ 2011 и хотел бы познакомить уважаемое хабрасообщество с современным состоянием дел в области высокопроизводительных вычислений.
Постараюсь по возможности ссылаться на первоисточники — а именно, на статьи из журнала "Суперкомпьютеры" и материалы конференции.

Зачем это все нужно


Суперкомпьютеры традиционно использовались в военных и научных целях, но в последние годы в их применении произошли революционные изменения, связанные с тем, что их мощность «доросла» до моделирования реальных процессов и предметов при доступной для бизнеса стоимости.
Все, наверное, знают, что в автомобилестроении расчеты на суперкомпьютерах используются для повышения безопасности, например так получил свои 5 звезд Ford Focus. В авиапромышленности выпуск нового реактивного двигателя по традиционной технологии — дорогостоящее удовольствие, например создание АЛ-31 для СУ-27 заняло 15 лет, потребовало создать и разрушить 50 опытных экземпляров и стоило 3,5 млрд. долларов. Двигатель для Сухой Супержет, спроектированный уже с участием суперкомпьютеров, сделали за 6 лет, 600 млн евро и было построено 8 опытных экземпляров.
Нельзя не отметить и фармацевтику — большая часть современных лекарств проектируется с помощью виртуального скрининга , который позволяет радикально снизить затраты и повысить безопасность лекарств.
Дальше — больше.
Сегодня в развитых европейских странах:
47,3% высокотехнологической продукции производится с использованием имитационного моделирования фрагментов проектируемых сложных систем или изделий;
32,3% продукции производится с использованием имитационного моделирования мелкомасштабных аналогов проектируемых систем и изделий;
15% продукции производится с использованием полномасштабного имитационного моделирования проектируемых систем и изделий;
и лишь 5,4% проектируемых сложных систем и изделий производится без имитационного моделирования.

Суперкомпьютерные технологии в современном мире стали стратегической областью, без которой невозможно дальнейшее развитие. Мощность национальных суперкомпьютеров сейчас так же важна, как мощность электростанций или количество боеголовок.
И сейчас в мире началась
Читать дальше →
Всего голосов 62: ↑57 и ↓5+52
Комментарии43

Быстрое восстановление пароля по MD5-хешу методом брутфорса

Время на прочтение3 мин
Количество просмотров26K
Наверное каждый из нас хоть раз забывал пароль от какого-нибудь важного сайта, а потом пытался расшифровать его по сохранившимся кукам в браузере. Возможно это были даже не Ваши куки, но это не важно — если Вам интересна тема скоростного брутфорса, то добро пожаловать под кат!

Сразу скажу, что описанные в статье техники ускорения подходят для любого алгоритма хеширования, но из-за широкой распространённости я выбрал именно md5.
Читать дальше →
Всего голосов 105: ↑84 и ↓21+63
Комментарии54

OpenCL: Как заставить эту штуку работать

Время на прочтение3 мин
Количество просмотров9.4K
image

Очень многие, пробовавшие «на вкус» технологию использования графических ускорителей CUDA/OpenCL получили не слишком хорошие результаты. Да, тесты идут и простые примеры показывают впечатляющее ускорение, но вот когда дело доходит до реальных алгоритмов, хороший результат получить очень непросто.
Как же заставить эту технологию работать?
В данной статье я постарался обобщить свой полугодовой опыт бодания с технологией OpenCL под Mandriva linux и MacOS X 10.6 на задачах сложного поиска строковых данных для биоинформатики. OpenCL был выбран т. к. для Мака он является «родной» технологией (часть маков комплектуется видеокартами AMD и CUDA под ними недоступна даже теоретически), но предлагаемые рекомендации достаточно универсальны и подходят в том числе и для NVIDIA CUDA.

Итак, что необходимо, чтобы графический ускоритель заработал?
Читать дальше →
Всего голосов 51: ↑43 и ↓8+35
Комментарии20

Веб-кластер — опыт реального применения

Время на прочтение9 мин
Количество просмотров20K
Приветствую, уважаемые сообщники!

Эта статья — о том, как мы реализовали веб-кластер для новостного портала (с пиком посещений в 130 тысяч уникальных посетителей в день — это 7Тб траффика за 3 дня — выборы и 2 последующих. Сейчас в среднем кластер раздаёт 35-40 Тб траффика в месяц), о том, как по-разному понимают одинаковые задачи программисты и журналисты, о том, как можно достичь одной и той же цели, идя разными путями.

Она будет интересна тем, кто хочет построить легко масштабируемый географически распределённый веб-кластер, не вкладывая астрономических сумм в оборудование (а по меркам телевидения — будут вообще смешные суммы).

Я больше чем уверен, что маркетологи, толкающие убер-решения свежевыпущенных продуктов, имеющих в своём названии слова «масштабируемый веб-кластер» или «horizontal infinite scalable web cluster», меня возненавидят.

Я больше чем уверен, что конкуренты наших клиентов будут удивлены простотой решения, которое мы использовали.

Читать дальше →
Всего голосов 97: ↑84 и ↓13+71
Комментарии99

Суперкомпьютер на третьем поколении процессоров Loongson

Время на прочтение2 мин
Количество просмотров1.4K
На прошлой неделе мировые СМИ облетела новость, что Китай анонсировал строительство суперкомпьютера Dawning 6000 мощностью более 1000 терафлопс на процессорах собственного производства Loongson (aka Godson).

Запуск суперкомпьютера состоится нынешним летом и он наверняка войдёт в Топ-20 в мире.

До сих пор процессоры Loongson применялись разве что в слабеньких нетбуках и телеприставках. Поскольку они могут эмулировать x86-код, возникает вопрос: неужели третье поколение этих чипов уже обладает достаточной мощностью, чтобы конкурировать с процессорами Intel?
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Комментарии1

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Масштабирование нагрузки web-приложений

Время на прочтение6 мин
Количество просмотров60K
С ростом популярности web-приложения его поддержка неизбежно начинает требовать всё больших и больших ресурсов. Первое время с нагрузкой можно (и, несомненно, нужно) бороться путём оптимизации алгоритмов и/или архитектуры самого приложения. Однако, что делать, если всё, что можно было оптимизировать, уже оптимизировано, а приложение всё равно не справляется с нагрузкой?
Читать дальше →
Всего голосов 109: ↑98 и ↓11+87
Комментарии38

libscgi — эффективное решение для простых и быстрых скриптов

Время на прочтение4 мин
Количество просмотров4.8K
Очень часто необходимо реализовать простое легкое решение, которое должно отработать довольно быстро. А с использованием технологии AJAX это стало еще актуальнее. Это может быть как скрипт автокомплита, скрипт специфического поиска, вывод информации из справочника. Ранее использовались cgi скрипты. При больших нагрузках они оказались не очень эффективными и были разработаны протоколы fcgi и scgi. Следует заметить что производительность scgi сервера довольно-таки высокоя (более 1500 запр/сек) и памяти занимает всего 600K.

Протокол Simple Common Gateway Interface (SCGI) — это протокол по взаимодействию приложений с веб (http) серверами. Большинство современных WEB-серверов (Apache/nginx/lighttpd) имеют встроенную поддержку scgi. Ниже дано краткое описание использование простой библиотечки, которая представляет собой scgi сервер.

Исходники тут.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии40

Про техники оптимизации

Время на прочтение24 мин
Количество просмотров11K
Поучительная история о техниках оптимизации наглядно.

Техзадание

Объявим в рамках топика небольшой конкурс по архитектурно-ориентированной оптимизации программного обеспечения.
Вкратце, код состоит из пачки функций, производящих невнятные на первый взгляд манипуляции с исходными данными, и примочки-драйвера, который n раз запускает неоптимизированную версию, затем оптимизированную, сравнивает насчитанные циферки, и, в случае их совпадения, выдает отношение времени выполнения. Вот так:

Executing original code… done
Executing optimized code… done
Checking results… PASSED
Number of runs: 3
Original code average time: 11.954537 sec.
Optimized code average time: 1.052994 sec.
Speedup: 11.35

Разрешено использовать любые техники оптимизации, компилятор GCC с любыми опциями, и, скажем, сервер с двумя четырехъядерными процессорами Intel Xeon E5420 2.5 GHz.
Вот, кстати, код:
Читать дальше →
Всего голосов 108: ↑93 и ↓15+78
Комментарии66

Dell собирается купить компанию Compellent Technologies

Время на прочтение2 мин
Количество просмотров438
Причем стоимость этой сделки может достигать почти миллиарда долларов — в настоящее время речь идет о сумме в 900 миллионов долларов США. Это немного заниженная цена, что сейчас является скорее исключением, чем правилам. В настоящее время среди ИТ-корпораций нормой является завышение цены для понравившегося стартапа или компании.

Читать дальше →
Рейтинг0
Комментарии0

Oracle уменьшит количество ядер в процессорах SPARC T4

Время на прочтение2 мин
Количество просмотров1.4K
Следующее поколение серверных процессоров SPARC T4 будет с восемью ядрами вместо 16-ти в нынешнем SPARC T3. Такое решение приняла компания Oracle, которой сейчас принадлежит микропроцессорное подразделение Sun.

SPARC T3 после своего появления в сентябре 2010 года стал первым серверным процессором с 16-ю ядрами. Большое количество потоков лучше подходит для обработки веб-запросов и других легко распараллеливаемых задач, а не для ERP-систем, на которых специализируется Oracle. Поэтому и принято решение, что в SPARC T4 (ожидается в 2011 году) количество ядер сократят, чтобы улучшить производительность каждого отдельного треда.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии17

Видео с пользовательской конференции по Sphinx (~8часов)

Время на прочтение1 мин
Количество просмотров1K
Поскольку новость не пробежала на Хабре, но однозначно (с) будет интересна многим:

«Видео с пользовательской конференции по Sphinx (~8часов)
http://devconf.tv/user/sphinx».
Всего голосов 26: ↑23 и ↓3+20
Комментарии9

Проверяем отказоустойчивость сайта

Время на прочтение4 мин
Количество просмотров35K
Результаты тестирования. Время ответа сервераЭто очередной пост их уже традиционной предновогодней серии про проверку отказоустойчивости сайта и готовности его принять всех ваших посетителей, озадаченных выбором подарков или предновогодними скидками. В этом выпуске я рассмотрю создание тестов в расширенном режиме с использованием записи действий (Proxy recorder), что позволяет почти полностью эмулировать поведение реальных пользователей из реального браузера у вас на сайте. Также немного будет затронута тема анализа самих графиков по отказоустойчивости.
Итак, поехали.
Читать дальше →
Всего голосов 82: ↑67 и ↓15+52
Комментарии96

Вклад авторов