За последнее десятилетие R прошёл большой путь: от нишевого (как правило, академического) инструмента до мейнстримной «большой десятки» самых популярных языков программирования. Такой интерес вызван многими причинами, среди которых и принадлежность к open source, и деятельное коммьюнити, и активно растущий сегмент применения методов machine learning / data mining в разнообразных бизнес-задачах. Приятно видеть, когда один из твоих любимых языков уверенно завоёвывает новые позиции, и когда даже далёкие от профессиональной разработки пользователи начинают интересоваться R. Но здесь есть, однако, одна большая проблема: Читать полностью »
Рубрика «производительность» - 17
Низкоуровневая оптимизация и измерение производительности кода на R
2016-11-30 в 9:59, admin, рубрики: open source, 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Большинство программистов представляют вычислительную систему как процессор, который выполняет инструкции, и память, которая хранит инструкции и данные для процессора. В этой простой модели память представляется линейным массивом байтов и процессор может обратиться к любому месту в памяти за константное время. Хотя это эффективная модель для большинства ситуаций, она не отражает того, как в действительности работают современные системы.
В действительности система памяти образует иерархию устройств хранения с разными ёмкостями, стоимостью и временем доступа. Регистры процессора хранят наиболее часто используемые данные. Маленькие быстрые кэш-памяти, расположенные близко к процессору, служат буферными зонами, которые хранят маленькую часть дынных, расположеных в относительно медленной оперативной памяти. Оперативная память служит буфером для медленных локальных дисков. А локальные диски служат буфером для данных с удалённых машин, связанных сетью.

Иерархия памяти работает, потому что хорошо написанные программы имеют тенденцию обращаться к хранилищу на каком-то конкретном уровне более часто, чем к хранилищу на более низком уровне. Так что хранилище на более низком уровне может быть медленнее, больше и дешевле. В итоге мы получаем большой объём памяти, который имеет стоимость хранилища в самом низу иерархии, но доставляет данные программе со скоростью быстрого хранилища в самом верху иерархии.
Читать полностью »
Двенадцать полезных Chrome DevTools Tips
2016-10-03 в 8:36, admin, рубрики: chrome devtools, front-end разработка, Google Chrome, javascript, Блог компании Инфопульс Украина, браузеры, производительность, Разработка веб-сайтовВ данной статье мы рассмотрим некоторые функции инструментов разработчика Chrome. Конкретно я использую Chrome Canary и вам советую. И не потому, что это отсылка на маленьких милых птиц, которые пожертвовали своими жизнями чтобы мы могли добывать свежий уголь.
Некоторые из DevTools функций вы возможно не знали. Я буду очень счастлив, если хотя бы одну из них вы найдете для себя полезной.
(В статье ниже присутствуют анимированные гифги, которые начинают раздражать после первого цикла. Поэтому я советую открыть dev tools и удалить DOM ноды, которые отвечают за изображения.)
Итак, поехали:
Копируем переменную в буфер обмена
Об этой возможности я узнал из комментариев, и считаю ее достаточно полезной чтобы быть описанной в начале. Иногда бывает нужно скопировать содержимое переменной в буфер обмена. Например html код или json объект. Для этого можно использовать copy функцию.
copy (someVariable)
Теперь текстовое представление переменной скопировано в буфер обмена.
Читать полностью »
Двойная скорость и половина памяти: оптимизация PHP 7
2016-09-28 в 13:10, admin, рубрики: intel xeon, php, PHP 7, Блог компании Intel, высокая производительность, оптимизация, производительность, разработка, Разработка веб-сайтовКлюч к высокой производительности приложений – оптимизация. При этом, чем ниже уровень, на котором код подстраивают под особенности аппаратного обеспечения – тем большего можно добиться. А ещё более впечатляющих результатов можно достичь тогда, когда при проектировании аппаратного обеспечения учитываются особенности кода. Сегодня мы расскажем о том, как идёт работа над ускорением PHP 7, которую совместно, практически непрерывно, ведут Intel и сообщество PHP-разработчиков.
Оптимизация кода: процессор
2016-09-12 в 15:32, admin, рубрики: C, c++, высокая производительность, компилятор оптимизация, Компиляторы, оптимизация программ, программирование микроконтроллеров, производительность, процессор, язык cВсе программы должны быть корректными, но некоторые программы должны быть быстрыми. Если программа обрабатывает видео-фреймы или сетевые пакеты в реальном времени, производительность является ключевым фактором. Недостаточно использовать эффективные алгоритмы и структуры данных. Нужно писать такой код, который компилятор легко оптимизирует и транслирует в быстрый исполняемый код.

В этой статье мы рассмотрим базовые техники оптимизации кода, которые могут увеличить производительность вашей программы во много раз. Мы также коснёмся устройства процессора. Понимание как работает процессор необходимо для написания эффективных программ.
Читать полностью »