Сообщения

Производительность локального SSD против корпоративной системы хранения IBM DS5300

Изображение
Есть у нас некий сервер с двумя процессорами Intel Xeon E5-2690v2. 20 физических ядер в сумме и 40 виртуальных.

На сервере VMware vSphere 5 с двумя виртуальными тестовыми машинами (одна клон другой) под CentOS 7 с XFS 12 ГБ ОЗУ, 40 vCPU на каждой.

Локальные диски: 2SSD Intel DC S3500 800 GB в RAID1 на локальном контроллере.
Удаленные диски: подключены по FibreChannel 4Gb к IBM DS5300 с дисками SATA HDD 7200 в RAID6 с датастором 4.5 TB. Кеш контроллера на системе хранения: до 16 ГБ.

Интерес вызывает, есть ли разница между локальными SSD и достаточно мощной системой хранения корпоративного уровня среднего класса, но на HDD 7200.

Хочется прогнать на реальных виртуальных машинах и в синтетике sysbench.

Тестирование на веб-сервере
В качестве виртуальных машин взят сервер с установленной электронной библиотекой (вот он внешне http://demo.elibsystem.ru/) и на него долбится Apache Benchmark.

Сервер такой, что все у него влазит в ОЗУ (высокий кеш-хит в MySQL), поэтому диски трогаются мало, за…

Инвертирование ввода сенсорного экрана в Linux

Бывает, что сенсорный экран вставлен в киоск "вверх ногами" и при нажатии на экран в, например, левой верхней части курсор срабатывает в правой нижней.

Требуется настроить ввод, чтобы нажатия отрабатывались правильно.

Это можно сделать командой:

xinput set-prop "Elo TouchSystems, Inc. Elo TouchSystems 2700 IntelliTouch(r) USB Touchmonitor Interface" --type=float "Coordinate Transformation Matrix" -1 0 1 0 -1 1 0 0 1 , где вместо Elo TouchSystems... вставить название вашего сенсорного экрана или его идентификатор, а -1 0 1 0 -1 1 0 0 1 - это матрица трансформации координат.

Получить название можно по:
xinput list Если команды не работают, возможно вам перед их выполнением надо экспортировать нужный дисплей:
export DISPLAY=:0.0

Использование беспроводного подключения смартфона для VR на PC c видеокартами NVIDIA (используем смартфон вместо Oculus Rift, HTC Vivo,..)

Современные смартфоны можно вставить в очки за 1 т.р. и получить виртуальную реальность (VR). Но проблема в том, что эта VR мобильная - работают только мобильные игры.

А что вот если бы можно было играть на PC, а видео передавать по Wi-Fi на смартфон? Тогда бы можно было получить функционал очков за 40 т.р. заплатив 1 т.р. за пластиковую коробку для очков?

Кратко: да, это возможно и я расскажу как.
Технические требования 1. Видеокарта NVIDIA с поддержкой GameStream (проверялось на nvidia GTX 1060) и 3D Vision.
2. Смартфон с разрешением FullHD или большим.
3. Wi-Fi с возможностью подключения смартфона к ПК через сеть.
Общие принципы Нам надо добиться, чтобы игра показывалась Side by Side (SBS), т.е. кадр слева и кадр справа на экране монитора.

Этот экран монитора мы захватываем в видеопоток и отправляем на смартфон.

На смартфоне декодируем видео и отображаем на весь экран.

Управлять будем с клавиатуры сидя за ПК.
Отображение игры в SBS
1.1 Устанавливаем драйвера NVIDIA с GeForce Expe…

Использование USB 3.0 UVC платы захвата ezcap 261 для захвата HDMI видео в FullHD 60 fps.

Изображение
Задача: нужно USB-устройство для захвата видео через HDMI и трансляции его в сеть и/или запись.

Купил на пробу одно из китайских устройств захвата ezcap 261 менее чем за 100$.

В устройстве HDMI-вход, USB 3.0 порт для подключения и питания и HDMI-выход (можно не использовать). HDMI-выход просто зеркалирует изображение в том же разрешении, в котором оно пришло в устройство.

Устройство захвата полностью аналогична Ezcap 287 и даже прошивку они имеют одну на двоих, но у 287 нет HDMI-выхода.

Заявлена совместимость с Linux, Windows, macOS. Работа проверена в Windows и macOS.



Плата распознается как UVC-устройство. Драйверов скачивать отдельно не требуется. В теории это означает, что плата должна работать со всеми актуальными программами совместимыми с веб-камерами, так как веб-камеры именно как UVC-устройства и работают.

За счет чего в OBS Studio, XSplit Broadcaster, Adobe Flash Media Live Encoder, VLC, FFmpeg и т.д. можно завести видео с HDMI-источников, например с ПК или с качественной вид…

Применимость Raspberry Pi 3 Model B для работы с Android

Попал в руки Raspberry Pi 3, появилось желание протестировать его на Android на предмет замены Raspberry тонкого клиента или демонстрация Android-приложений на выставках с помощью сенсорного монитора DELL S2240T.

Это мое первое знакомство с мини-ПК. Поэтому немного поудивляюсь некоторым моментам -).
Доступные дистрибутивы Удивительно, но производитель для Raspberry предоставляет только сборки с Linux, под Android есть только сборки энтузиастов + появилась сборка Google под Android Things. Но версия для интернета вещей меня не интересует по понятным причинам.

Сборки c Android TV ставятся, но приложений на них никаких нет + проблемы с подключением по Wi-Fi (не сразу удалось подключиться). Эти сборки тоже не очень интересны. Из сборок с обычной версией Android остается только RTAndroid.

RTAndroid on Raspberry Pi 3http://geektillithertz.com/wordpress/index.php/2016/08/26/android7-raspberry-pi-3/

RTAndroid - эта коммерческая версия (пока еще нестабильная, распространяющаяся бесплатно) Rea…

Скорость рендеринга в Apache PDFBox

Изображение
Существуют несколько способов как отобразить PDF-документ в браузере и один из часто встречающихся - отрендерить PDF на сервере и отправить в браузер.

Я использую для этих целей в том числе Apache PDFBox. При рендеринге больших книг становится актуальной задача ускорения рендеринга и для этого надо немного поисследовать скорость рендеринга.

Есть две тестовые книги

А) оцифрованная книга со страницами в формате jpeg 300 dpi, 92 стр. 150 МБ книга или 1.6 МБ одна страница.

Б) текстовый файл, 128 стр., 1 МБ, или 8 КБ страница.

Рендерить можно двумя способами:

1) Сразу отрендерить всю книгу
2) Ленивый рендеринг, по факту обращения к конкретной странице

Если рендерить книгу сразу, то рендеринг книги в 1000 страниц может занять более часа времени для оцифрованной книги. Для оцифрованных книг лучше применять ленивый рендеринг.

В пользу ленивого рендеринга говорит еще и то, что он позволяет экономить место.

В ленивом рендеринге можно пойти тоже двумя путями: разбить файл PDF на отдельные стран…

Fast Image resize: OpenCV + IPP vs. Convert ImageMagick

Изображение
Скорость изменения размера изображения важна во многих ситуациях. Верить наслово, что Intel IPP будет в ресайзе всех рвать нельзя и надо провести тестирование.
Методика тестирования  Моя задача в тесте: изменить размер JPEG рисунка в три раза с 1748x2480 до 583x827 с q=95 и применением фильтра Lanczos при интерполяции.
Сервер: 16 vCPU Xeon X5670 2.93 GHz, 12GB RAM, vmWare vSphere ESXi-5.1.0, guest CentOS6 x64

Рекламируемый во многих местах Intel IPP платный, но для OpenSource проектов он бесплатен и я использовал его вместе с OpenCV 3.1, собранным из исходников с https://github.com/Itseez/opencv/

В качестве альтернативы выступил ImageMagic 6.7.2.7 / GraphicsMagic 1.3.20 с libjpeg-turbo 1.2.1

OpenCV тестировался с разными опциями: OpenMP, TBB, IPP и без оных.

Тесты прогонялись на одном рисунке по 100 раз для получения усредненного значения.

Задача ресайза для OpenCV запускалась из python, т.е. содержит дополнительные расходы на враппер, при этом python 2.6 запускался один раз и затем 1…