Метка «высокая производительность» - 2

Недавно в нашем блоге появилась статья о NUMA-системах, и я хотел бы продолжить тему, поделившись своим опытом работы в Linux. Сегодня я расскажу о том, что бывает, если неправильно использовать память в NUMA и как диагностировать такую проблему с помощью счётчиков производительности.
Читать полностью »

О чем это я?

Доброго времени суток, читатели!
По долгу службы возникла необходимость сделать быстрый кэш в памяти с сохранением его в БД. Во время разработки, соответственно, встает вопрос о выборе стандартных и не очень контейнеров. Можно конечно руководствоваться выбором исходя из сложности применяемых алгоритмов, но я решил проверить все на практике, для чего были написаны парочка тестов. Задача проверки эффективности использования памяти не ставилась. Для проверки всего этого дела использовались STLPort 5.2.1 и собранный с ним boost 1.52.0, компилировалось все на gcc 4.6 под ОС Ubuntu 12.04.2. Задача проверки эффективности использования памяти не ставилась, только скорость.
Читать полностью »

С приходом облачных технологий утопичная идея «иметь доступ к чему угодно, откуда угодно, с чего угодно» стала постепенно воплощаться в реальность. Всего за несколько лет понятия «частное облако», VDS, VDI и т.п. стали массово употребимыми – не без участия маркетологов практически всех крупных международных вендоров. Тем не менее, до сих пор существует определенная путаница терминов и понятий на рынке, а также ряд «неустаревающих» вопросов. Например, что такое виртуализация десктопов? Это технология или подход? В чем отличие виртуализации десктопов от инфраструктуры виртуальных рабочих столов? Наконец, при чем здесь Dell? За ответами на эти и другие вопросы просим под кат.Читать полностью »

Я занимаюсь созданием высоконагруженных приложений для биржевой торговли. Нагруженных как по объёму данных, так и по количеству пользователей и запросов. Естественно, что для таких приложений первостепенное значение имеет производительность, и, как следствие, тестирование оной.

Наблюдая со стороны это тестирование, я накопил некоторый объём информации, который, как я думаю, будет небезынтересен.

Камень 1-й. Коэффициент пересчёта

Тестирование таких приложений требует развёртывания целой сети тестовых машин. В итоге это приводит к образованию тестового кластера. Попытка развёртывания такого кластера на базе машин, физически стоящих в центре разработки, ведёт к созданию собственного датацентра со всеми издержками такого решения. Хорошей альтернативой стало использование решений типа Amazon Web Services.

Естественное желание сэкономить на аренде хостов или на покупке оборудования приводит к выбору таковых с заниженными относительно production инсталляции характеристиками. Заниженными в разы. И тут вступает в действие коэффициент пересчёта между синтетическими индексами производительности. Т.е. процессор в production будет в 2 раза быстрее, количество ядер будет в 4 раза больше, объём оперативной памяти будет в 6 раз больше, производительность дисковой подсистемы будет в 3,5 раза лучше, скорость сети будет в 100 раз больше. Сложим, поделим на количество показателей, умножим на некий поправочный коэффициент и получим коэффициент пересчёта, на который будем умножать результаты тестирования производительности. Можно придумать и более сложную формулу, например, назначить каждому показателю некий вес.

При ближайшем же рассмотрении такой подход оказывается пригодным лишь для подготовки тестовой сюиты для будущего тестирования на инсталляции, близкой к production, и на обнаружение самых очевидных проблем производительности. (Что уже достаточно много и важно.) Почему? Да потому хотя бы, что при таком подходе совершенно не учитывается эффект bottlenecks.Читать полностью »

В этой статье я расскажу о том, как загруженность шины данных влияет на масштабируемость (scalability) приложений. Под масштабируемостью мы будем понимать не только способность многопоточного приложения сокращать свое время выполнения по мере увеличения числа потоков. Мы также добавим сюда и способность однопоточного приложения, запущенного одновременно в несколько копий (instances), выполняться за тот же самый промежуток времени, что и одна копия. Хотя последний пример было бы правильнее охарактеризовать таким свойством как пропускная способность (throughput), так как он относится к «серверному» режиму запуска приложений. Т.е. это такой режим, при котором на сервере запускается однопоточное приложение, каждый раз когда к нему подключается новый клиент. Главная задача при разработке таких приложений — это снижение их зависимости от общих ресурсов, одним из которых может являться шина данных.
Читать полностью »

Нет, я не раскрою вам загадку, скрывающуюся в названии MCp0411100101, но постараюсь развёрнуто ответить на комментарий nerudo, записанный в топике Процессоры «Мультиклет» стали доступнее:

Читая описание архитектурных новшевств этого мультиклета, мне хочется воспользоваться фразой из соседнего топика: «Я не понимаю».

Если кратко, то MCp — это потоковый (от dataflow) процессор с оригинальной EPIC-архитектурой. EPIC — это Explicitly Parallel Instruction Computing, вычисления с явным параллелизмом инструкций. Я применяю этот термин здесь именно в этом смысле, как аббревиатуру, а не как ссылку на архитектуру Itanium-ов. Явный параллелизм в MCp совсем другого рода.

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

Роль компьютеров в «королевских гонках» вряд ли сложно недооценить. Шутка ли: без лэптопа сегодня вы даже не сможете завести болид. Да, это уже совершенно другой спорт, совсем не такой, каким его представляли в 50-х. IT-технологии проникли в каждый уголок этого невероятного спорта, создав машины, похожие на истребители, и сделав из водителей настоящих пилотов. Только представьте себе: внушительные суперкомпьютеры размером с несколько холодильников, позволяющие инженерам перебрать десятки вариантов конструкций любого узла за считанные часы и выбрать лучший, который и отправится на «распечатку». Мобильные сервера, развёрнутые в «походных» ЦОДах, пуленепробиваемые ноутбуки, гигабайты данных, курсирующие через полмира уже спустя несколько миллисекунд после того, как были собраны с сотен датчиков болида. Всё это — реальный мир Формулы 1. А знаете, что ещё очень важно в этом виде спорта? Команда. И сегодня мы хотим рассказать о том, как команды Dell и Intel помогли команде Catherham достойно войти в удивительный мир гонок F1.Читать полностью »

Под катом тезисы, хочется знать, что из этого вызовет интерес, а что сократить
Читать полностью »

В последнее время термин “NoSQL” стал очень модным и популярным, активно развиваются и продвигаются всевозможные программные решения под этой вывеской. Синонимом NoSQL стали огромные объемы данных, линейная масштабируемость, кластеры, отказоустойчивость, нереляционность. Однако, мало у кого есть четкое понимание, что же такое NoSQL хранилища, как появился этот термин и какими общими характеристиками они обладают. Попробуем устранить этот пробел.
NoSQL базы данных: понимаем суть

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

15 миллионов страниц в сутки. Результаты нагрузочного тестирования .NET Forge CMS в облаке Windows Azure и на Windows Server

Интересные результаты получены при нагрузочном тестировании системы управления контентом .NET Forge CMS в облачном окружении Windows Azure и на серверах Windows Server. Подготовку методики тестирования, проведение нагрузочных тестов и анализ данных проводила компания «ГАЛС Софт» на оборудовании хостинг-провайдера Infobox. Тестирование проходило при участии российского отделения Microsoft.

В тестировании исследовались возможности следующих редакций .NET Forge CMS:

  • Community-редакция: бесплатная редакция с широкими возможностями для создания сайтов сообществ, блогов, персональных сайтов и других типов решений;
  • Бизнес-редакция для создания интернет-магазинов, сайтов с высокой нагрузкой, для которых критически важны вопросы масштабирования, отказоустойчивости и безопасности;
  • Веб-кластер создания интернет-магазинов, сайтов с высокой нагрузкой, включающая поддержку платформы Windows Azure и Web Farm.

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


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