Некоторые заметки по текущему состоянию Cloud Gaming
После чтения статьи Dell и DROVA: как играть в требовательные игры даже на слабом ноутбуке, Мне вспомнилась в том числе статья Обзор рынка облачных сервисов игр на тему стриминга игр.
В комментариях к той был мельком упомянут Parsec (правда почему то автор решил, что Parsec — создан Amazon, возможно на основе статьи в блоге AWS Talking with Parsec, a Game-Changer of Gaming.
Так вот, функционал Parsec'а одним Amazon'ом не исчерпывается. Это универсальное решение стриминга игр (и не только>.
В том числе и с любых других компьютеров (есть некоторые требования, например хост должен поддерживать аппаратное кодирование видео (NVENC(лучще), VCE, Intel QuickSync), на хосте должна быть Windows 8.1/Windows 10 или соответствующие версии Windows Server. Windows 7 не поддерживается и не будет).
Клиент — Windows/macOS/Linux, Android (но нужен геймпад), rPI3. iOS версии нет.
Джойстики, планшеты и все такое
Если для игры нужны руль и педали или хороший джойстик или нам не играть нужно а рисовать и нужно подключить например графпланшет от Wacom — то тоже есть решение — приложение VirtualHere. Проброс USB по сети (триал поддерживает одно устройство). Стоит 49USD за сервер (в данном случае сервер — то устройство куда втыкается USB устройство)
Parsec Cloud Marketplace и Paperspace
У Parsec'а есть свой Cloud Marketplace, с возможностью арендовать виртуалку (и динамически включать/выключать ее), поддерживаются Amazon AWS и Paperspace. Цена как у исходного провайдера. Фродчек значительно более жесткий (и похоже, не понимающий что в некоторых случаях State спрашивать — не стоит а вот спросить Страну — разумно), на сайте техподдержки прямо сказано, что да — они, понимают что будут False Positives. Но лучще так чем фрод.
При этом, у того же Paperspace есть даже готовый шаблон виртуалки для Parsec. Подробнее Gaming with Paperspace.
Цены за виртуалку у Paperspace с 30 Gb RAM и Quadro P4000 с 8 Gb RAM — 0.4 USD/час (0.51 USD/час начиная с 6 Июля 2018) (есть помесячная оплата) + плата за хранилище. Трафик оплачивать не надо. А вот Public IP (2 US$ в месяц) оплатить придется чтобы Parsec использовать.
Если играть больше 20-30 часов в месяц все равно не выходит — то выходит вполне выгодно. Кстати выгоднее чем заявленные цены DROVA.
Вообще то у Paperspace есть и другое назначение — серверы для machine learning, там специальные фреймворки под это есть, возможно расскажу как нибудь в другой раз.
Если хочется поближе сервер
Как уже было сказано, Parsec к хостингу не привязан.
Достаточно найти сервер с GPU, по устраивающей вас цене. Они есть, в том числе в Москве.
А еще, можно все же свою машинку собрать и разместить где удобно поблизости.
Можно конечно и свою машинку собрать, поставить ее где удобно и использовать. Но это инвестиции в машинку.
И как все это работает?
У меня вполне нормально работает.
Пинг до Paperspace у меня около 90 мс и пришлось подкрутить настройки чтобы не было даже редких разрывов в звуке. Качество картинки изредка падает на доли секунды. Трафик по статистике Mikrotik'а («Daily» Graph (5 Minute Average), возможности более точно померять не было, так что возможно были пики), — 10-12 Mbit/s (хотя Parsec'у прямо сказано что можно использовать 30 Mbit/s).
Железо:
- MacMini Late 2012, подключенный кабелем к Mikrotik'у а тот — к провайдеру (обычный 100 Mbit/s анлимный проводной тариф за 570 рублей в месяц) + Saitek X52 Pro — в Elite:Dangerous вполне нормально летать (боевых действий я стараюсь избегать). FPS почти постоянно — 60 (раньше, когда еще E:D запускалась на этом MacMini — FPS при стыковке был 15-20).
Input lag на мой взгляд — не заметен.
При установке VirtualHere возникли некоторые проблемы (если кратко — у Apple паранойя с каждой версией macOS принимает все более острую форму. VirtualHere ставит драйвер, и прямо говорит что надо в настройках макоси разрешить его использование. Так вот, macOS будет игнорировать нажатия соответствующей кнопки пока запущен Google Chrome.
- MacBook Air Late 2013, подключенный по 5 Ghz WiFi а затем к тому же Mikrotik'у — картинку с Skyrim Special Edition и Enslaved: Odyssey to the West вполне нормально работают.
Недостатки
- C точки зрения сервисов, которые по geoip проверяют пользователя — Paperspace это США (даже датацентр в Амстердаме).
- Майнинг на сервере как минимум у Papeprspace прямо запрещен. Если нам сервер нужен не круглые сутки а пришлось взять без почасовой оплаты — не всегда получится окупить хоть частично. Тем более в России, с непонятками в отношении статуса криптовалют.
- Игры таки надо покупать самостоятельно. При этом в случае Paperspace — надо указать более оптимальный сервер Steam CDN, потому что по geoip — выбирается калифорнийский(!). но это же — и преимущество, потому что можно ставить абсолютно любые моды.
- Закидывать файлы на сервер у Paperspace через Google Drive если он у вас прокачанный —
не выйдет, там серверная версия Windows. Я использую Яндекс.Диск (вот и пригодились бесплатные 42 Gb). - При оплате доступа в интернет погигабайтно — лучше не использовать.
- Если интернет-канал не может обеспечить хотя бы 15 Мбит/с БЕЗ звездочек, впечатления будут не самые хорошие.
Таким образом, сейчас в России, вполне можно использовать облачные сервисы для запуска ресурсоемких игр, использование модов или дополнительного оборудования — не представляет проблемы. И цены вполне конкурентоспособные, если использовать иностранные сервисы.
Update 1
Удалены ссылки на «обычных» хостеров с GPU с ценами.
Update 2
Добавлено пояснение что «10-12» Mbit/s — это 5-minute average а не мгновенные цифры.
Update 3
Обновлены цены Paperspace и исправлена моя ошибка из-за которой не показывались Update N и раздел «ссылки».
Ссылки:
- blog.parsecgaming.com/description-of-parsec-technology-b2738dcc3842 Некоторые технические детали, о том как работает Parsec
- support.parsecgaming.com/hc/en-us/articles/115002699192-Hardware-Requirements-For-Hosting-A-Gaming-Session-On-Parsec и support.parsecgaming.com/hc/en-us/articles/360001106411-How-Do-I-Know-If-My-Graphics-Card-Supports-Hosting-A-Game-With-Parsec Требования к хосту для Parsec.
- support.parsecgaming.com/hc/en-us/articles/360001394931-Parsec-s-Network-Requirements- Требования Parsec'а к сети.
- support.parsecgaming.com/hc/en-us/articles/115002683491-Running-Parsec-On-A-Headless-Gaming-PC-Or-A-Server как запустить Parsec на машине без монитора.
- blog.parsecgaming.com/play-ffxiv-on-android-tablets-with-parsec-game-streaming-c4dbc2b67dff Как люди играют на планшете в FFXIV по 4G LTE (в Англии, при этом нужный сервер у этой девушки — для других целей арендуется, а в свободное время — майнит). Не советую повторять в Российских условиях, разве что если старая безлимитная симка Yota и хочется узнать как именно они обоснуют снижение скорости.
- blog.parsecgaming.com/how-to-use-a-wacom-tablet-with-an-inexpensive-cloud-pc-for-cloud-rendering-620d5a1a51b5 — Туториал как планшет от Wacom подключить (хотя на мой взгляд открывать на сервере порт и коннектится к нему без авторизации вообще, это не есть хорошо, хоть по IP то ограничение можно дописать же).
- blog.parsecgaming.com/nvidia-nvenc-outperforms-amd-vce-on-h-264-encoding-latency-in-parsec-co-op-sessions-713b9e1e048a и blog.parsecgaming.com/new-nvidia-gpus-outperform-new-amd-cards-on-h-264-compression-latency-d32784464b94 — почему для своего сервера лучше использовать Nvidia а не AMD.
- www.reddit.com/r/cloudygamer/comments/8fbgxc/liquidsky_does_not_use_encryption_for_skycomputer Про «безопасность» LiquidSky разработчики похоже не озаботились шифрованием передаваемых с клиента данных вообще. Весь клавиатурный ввод и содержимое буфера обмена — летает открытым текстом.
- pqrs.org/osx/karabiner/help.html#kext-allow-button-does-not-work — про проблемы с загрузкой 3rd-party драйверов в macOS.
Комментарии (10)
denis-isaev
01.07.2018 16:1660fps fullhd, а поток только 12 мбит? Получается видеопоток на сервере кодируется и на пользовательском «слабом ноутбуке» декодится? Причем, судя по битрейту, нехило так сжимается, что подразумевает приличную нагрузку при декодировании.
Т.е. задержки по сравнению с олскульным вариантом игры, при пинге 90мс, такие:
1) от устройства ввода данные летят туда (>90 мс)
2) там видео поток кодируется (немножко мс)
3) видео данные летят на клиентскую тачку (>90 мс)
4) на слабой клиентской тачке видео декодируется (прилично мс, ведь тачка слабая)
Как с такими задержками можно играть? Двинул мышей, а оно только через треть секунды на мониторе отреагировало?
Или я что-то путаю?vikarti Автор
01.07.2018 16:54Декодирование разумеется — аппаратное если оно возможно (мой случай). Parsec умеет и программное но в документации прямо сказано что будет медленно.
( support.parsecgaming.com/hc/en-us/articles/115002702391-Hardware-Requirements-For-Connecting-To-Another-Computer-With-Parsec ).
В справке Parsec'а support.parsecgaming.com/hc/en-us/articles/360001394931-Parsec-s-Network-Requirements- — прямо говорится что надоPing lower than 30ms to Speedtest.net server in same city as host
(и 15 — для «1080P60»).
Анализ статистики с клиента — тоже показывает что «все плохо».
Тем не менее — получается играбельно вполне, для меня играбельно.
Использовать сервер в своем городе или рядом у меня возможности нет или я не знаю о таком пока (кроме варианта 'собрать свою машинку' и приткнуть где то), использовать сервер в Москве — это 40 ms пинг + придется именно сервер брать (и там будет например IPMI и рейд из SSD) а не облачную виртуалку как у Paperspace (пока минимально подходящий вариант в Москве — 12.3k рублей в месяц, при этом 3/4 времени — сервер будет простаивать, майнить на нем что ли в это время?).
p.s. Кодирование по блогу авторов Parsec'а — это еще в районе 5 ms (nvenc'ом, на amd — в районе 15 ms)
p.p.s. Если посоветуете как померить реальные а не «воспринимаемые» задержки (не пинг а именно полную цепочку) — попробую померять.denis-isaev
01.07.2018 17:23К сожалению, как померять не представляю. Я просто только на днях узнал про такой сервис на примере DROVA и вот теперь думаю покупать ли новый игровой комп или «оно на самом деле работает», поэтому присматриваюсь, Ваша статья очень в тему оказалась, сенкс :)
Я так понимаю, что потенциальные минимальные задержки это где-то 20ms (пинги и кодирование/декодирование по 5 мс). Это если сервак в одном городе.
Интересно, как такие задержки в динамичном шутере ощущаются )Gugic
02.07.2018 09:47Гонял Doom образца 2016-го на playkey — никакого дискомфорта не было (но я не хардкорный геймер уже давно)
UnhappyPanda
02.07.2018 11:56p.p.s. Если посоветуете как померить реальные а не «воспринимаемые» задержки (не пинг а именно полную цепочку) — попробую померять.
Можно воспользоваться любой программой записи экрана, которая выдает видео в 60 fps и умеет визуализировать щелчок мышкой. К сожалению на вскидку ничего предложить не могу, надо гуглить.
Сначала протестировать какое-либо стандартное действие в игре (например переключение какого-либо пункта меню) на своей реальной машине, найти разницу в фреймах между визуализацией клика и появлением результата в игре. Потом повторить то же самое на удаленном сервере, посмотреть, изменилась ли задержка.hit_mankaa
03.07.2018 09:31Как это мерять хорошо рассказывается на youtube канале Battle(non)sense, однако, нужна будет камера умеющая в видео 1200 fps, да и в целом там много достаточно интересных тестов для оценки «input lag» для игр.
vikarti Автор
03.07.2018 09:32Про вариант камерой у того же Parsec'а в блоге тоже есть. Но вот это… не самое доступное оборудование. У меня например такой камеры — нет.
Gugic
02.07.2018 09:43Пробовал liquidsky, paperspace (с parsec и без), playkey.
С parsec получил удручающе низкое качество видеопотока (он вроде бы и 1080@60, но яркость/контраст уплыли непонятно куда, какое-то мыло непонятное и т.д.) по какой-то причине (по сравнению с родным клиентом paperspace), очень быстро перестал пытаться.
У paperspace очень порадовало наличие браузерного клиента (гонял в Wolfenstain the New Colossus из хрома, очень круто), расстроило неимоверное количество багоглюков (как в нативном так и в браузерном клиентах), в конце концов меня не хватило с ними бороться.
У liquidsky как у сервиса на мой личный вкус все было удобнее и понятнее всего, но были какие-то проблемы с обновлением драйверов в течение пары месяцев (там "серверные" видеокарты и драйвера на них — объект какого-то сурового лицензирования), в итоге некоторые игры там просто не запускались.
Playkey с другой стороны безальтернативен по пингу если живешь в азиатской части России (остальные сервисы хостятся преимущественно у амазона я так понимаю и ближайший к России ДЦ там — Франкфурт, у плейкея кажется есть сервера на территории РФ). Ну и модель немного другая — у плейкея можно играть только в игры из их каталога, в какую-нибудь редкость/древность не поиграешь, хотя каталог обширный и все AAA новинки там есть.
Хочется еще попробовать PS Now.
Короче закончилось все тем, что я купил ноутбук с TB3 и внешний бокс с 1080.
samizdam
В копилку моего футуристического концепта.