Здравствуйте, дорогие читатели. Сегодня пятница, а у нас на борту продолжается напряженный отсмотр и анализ новинок по C++, желательно с учетом C++ 17. В ходе этого увлекательного занятия мы набрели на блог Яцека Галовица (Jacek Galowicz). Из сравнительно свежих материалов нам особенно понравилась статья, размещенная под катом.
Читать полностью »
Рубрика «производительность» - 20
Обертываем алгоритмы в итераторы
2016-12-16 в 10:07, admin, рубрики: c++, Алгоритмы, Блог компании Издательский дом «Питер», ооп, Программирование, производительность, рефакторингСравнение производительности GPU-расчетов на Python и C
2016-12-11 в 8:05, admin, рубрики: C, CUDA, gpgpu, numba, pycuda, python, производительность
Python обладает рядом привлекательных преимуществ к которым относится простота реализации программных решений, наглядность и лаконичность кода, наличие большого числа библиотек и многочисленного активного комьюнити. В то же время, известная всем медлительность питона часто ограничивает его применимость для “тяжелых” вычислений. Для ряда задач можно добиться существенного ускорения расчетов путем использования технологии CUDA для параллельных вычислений на GPU. Цель этого небольшого исследования — анализ возможностей эффективного использования python для расчетов на GPU и сравнение производительности различных python-решений с реализацией на C.
Читать полностью »
«Производительность – это фича». Интервью с Марко Чеккони, Stack Overflow
2016-12-05 в 14:43, admin, рубрики: .net, C#, dotnext, stackoverflow, Блог компании JUG.ru Group, высокая производительность, Марко Чеккони, производительность
На протяжении многих лет одним из главных вопросов, связанных с приложениями на .NET, был вопрос производительности. Одна из самых первых статей на эту тему датирована еще 2001-м годом.
Тема не теряла актуальности более 10 лет, и в 2011 люди все еще задают вопросы в поисках лучшего инструмента для профилировки.
О том, что все это значит для современной .NET-разработки и какие инструменты для обеспечения максимальной производительности использует крупнейшее сообщество разработчиков в мире, мы решили поговорить с перфоманс-инженером Stack Overflow Марко Чеккони.
Марко Чеккони, инженер Stack Overflow из Лондона. Много пишет о разработке софта, кодинге, архитектуре и командной работе.
– Вы работаете в Stack Overflow, можете назвать основные «болевые точки» вашего проекта с точки зрения производительности?
– Их две: с одной стороны, нам надо быть очень-очень аккуратными при инстанцировании объектов и в работе со сборкой мусора, а с другой, нам нужно не меньше внимания уделять тому, как мы используем SQL-сервер, пишем SQL-запросы, строим таблицы и т.п.
На данный момент это два основных аспекта, которым мы уделяем максимальное внимание, и которые больше всего влияют на производительность.
– Ваше решение построено полностью на С#, или есть части на других языках, типа C++, Java, Python или других?
Читать полностью »
Низкоуровневая оптимизация и измерение производительности кода на R
2016-11-30 в 9:59, admin, рубрики: open source, R, высокая производительность, оптимизация, Программирование, производительностьЗа последнее десятилетие R прошёл большой путь: от нишевого (как правило, академического) инструмента до мейнстримной «большой десятки» самых популярных языков программирования. Такой интерес вызван многими причинами, среди которых и принадлежность к open source, и деятельное коммьюнити, и активно растущий сегмент применения методов machine learning / data mining в разнообразных бизнес-задачах. Приятно видеть, когда один из твоих любимых языков уверенно завоёвывает новые позиции, и когда даже далёкие от профессиональной разработки пользователи начинают интересоваться R. Но здесь есть, однако, одна большая проблема: Читать полностью »
Как можно централизованно управлять всеми мобильными устройствами в компании
2016-11-18 в 9:29, admin, рубрики: MDM, panda security, Panda Systems Management, RMM, Блог компании Panda Security в России, ит-инфраструктура, контроль, облачный сервис, производительность, Сетевые технологии, системное администрированиеВ современную эпоху BYOD и мобильности сотрудников предприятий вопросы MDM становятся все актуальнее. Каким образом можно решить данный вопрос с помощью RMM-решений?
Разгоняем производительность iOS-приложений
2016-11-14 в 17:52, admin, рубрики: edisonsoftware, ios development, Блог компании Edison, мобильные приложения, Программирование, проектирование, производительность, разработка, разработка мобильных приложений, разработка под iOS, сервисы
Тормоз для броненосца USS Iowa BB-1, 1910 год. Эта штуковина должна тормозить 11 346 тонн брони.
Оригинал: iOS App Performance: Instruments & beyond
Автор: Igor M
Пользователи не любят ждать. Они не заботятся (и не должны) о том, что необходимо приложению для инициализации, они просто хотят, выполнить свою задачу как можно быстрее. Ваше приложение должно запускаться почти мгновенно, его интерфейс должен быть красивым с плавными переходами. Производительность приложения является одним из ключевых преимуществ в условиях конкуренции на рынке программного обеспечения.
Как разработчики, мы также хотим, гордиться своими приложениями.
Тем не менее, оптимизация производительности является сложной проблемой. Большинство узких мест противоречит здравому смыслу. При отсутствии надлежащих измерений, крайне трудно понять, что замедляет ваше приложение.
Для того, чтобы иметь возможность оптимизировать производительность вашего приложения, вы должны принимать решения, основанные на данных. В этой части я покажу, как получить эти данные путем измерения производительности различных частей вашего приложения.
Читать полностью »
Титанические усилия, часть 1
2016-10-23 в 14:29, admin, рубрики: 1070, 4k2k, 980ti sli, gtx 1070, gtx 980ti, nividia, Видеокарты, Железо, игры, Мониторы и ТВ, производительность, Процессоры, метки: 1070, 4k2k, 980ti sli, gtx 1070, gtx 980ti, nividiaВсем привет. Жизнь мало какого ПК-гика не обходится без дурной идеи поставить две видеокарты. Я уже писал про «Троллейбус из хлеба» и две младших NVIDIA в SLI (тогда использовались GTX 950). Настало время перейти на более тяжёлые наркотики.

Сегодня у нас в гостях две 980 Ti в SLI, одна GTX 1070, много грязных ругательств, 4k2k и вопросы «как такое может быть». В общем, всё как всегда, будет интересно, заглядывайте под кат. ;)
Читать полностью »
Сaжаем на диету индексы PostgreSQL для Zabbix
2016-10-19 в 5:53, admin, рубрики: postgresql, zabbix, Администрирование баз данных, Блог компании centos-admin.ru, производительность, Серверная оптимизация, Серверное администрирование
Недавно мы перевели Zabbix на работу с БД PostgreSQL. Вместе с переездом на сервер с SSD это дало существенный прирост скорости работы. Также решили проблему с дублирующими хостами в базе данных, bug request. Здесь статья могла бы закончиться, но мы заметили, что Zabbix использует много дискового пространства, поэтому ниже я расскажу, как это вышло. И как мы с этим разобрались.
DellEMC Unity 400F: небольшое тестирование
2016-10-14 в 1:31, admin, рубрики: cache, dell, DellEMC, EMC, Fast Cache, performance, SAN, storage array, testing, unity, Unity 400F, VNX, VNX2, VNXe, VNXe2, производительность, системное администрирование, СХД, тестирование, хранение данных, хранилища данныхВ начале мая 2016 года, еще до окончания объединения с Dell, компания EMC объявила о выходе нового поколения массивов среднего уровня под именем Unity. В сентябре 2016 года к нам привезли демо-массив Unty 400F в конфигурации с 10 SSD дисками на 1.6TB каждый. В чем различие между моделями с индексом F и без оного можете почитать по данной ссылке в блоге Дениса Серова. Так как перед передачей демо дальше заказчику возник временной лаг, то было принято решение погонять массив тем же самым тестом, которым ранее уже нагружались VNXe3200 и VNX5400. Что бы посмотреть хотя бы на «синтетике» так ли хорош Unity по сравнению с предыдущими поколениями массивов EMC, как это расписывает вендор. Тем более что, судя по презентациям вендора, Unity 400 является прямой заменой VNX5400.

А DellEMC утверждает, что новое поколение по крайней мере в 3 раза производительнее, чем VNX2.
Если интересно, что из всего этого вышло, то…
Читать полностью »
Оптимизация кода: память
2016-10-10 в 15:05, admin, рубрики: C, c++, высокая производительность, компилятор оптимизация, Компиляторы, оптимизация программ, программирование микроконтроллеров, производительность, процессор, язык cБольшинство программистов представляют вычислительную систему как процессор, который выполняет инструкции, и память, которая хранит инструкции и данные для процессора. В этой простой модели память представляется линейным массивом байтов и процессор может обратиться к любому месту в памяти за константное время. Хотя это эффективная модель для большинства ситуаций, она не отражает того, как в действительности работают современные системы.
В действительности система памяти образует иерархию устройств хранения с разными ёмкостями, стоимостью и временем доступа. Регистры процессора хранят наиболее часто используемые данные. Маленькие быстрые кэш-памяти, расположенные близко к процессору, служат буферными зонами, которые хранят маленькую часть дынных, расположеных в относительно медленной оперативной памяти. Оперативная память служит буфером для медленных локальных дисков. А локальные диски служат буфером для данных с удалённых машин, связанных сетью.

Иерархия памяти работает, потому что хорошо написанные программы имеют тенденцию обращаться к хранилищу на каком-то конкретном уровне более часто, чем к хранилищу на более низком уровне. Так что хранилище на более низком уровне может быть медленнее, больше и дешевле. В итоге мы получаем большой объём памяти, который имеет стоимость хранилища в самом низу иерархии, но доставляет данные программе со скоростью быстрого хранилища в самом верху иерархии.
Читать полностью »

