Некоторые заметки по текущему состоянию 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 и раздел «ссылки».

Ссылки:


Комментарии (10)


  1. samizdam
    01.07.2018 15:59

    В копилку моего футуристического концепта.


  1. denis-isaev
    01.07.2018 16:16

    60fps fullhd, а поток только 12 мбит? Получается видеопоток на сервере кодируется и на пользовательском «слабом ноутбуке» декодится? Причем, судя по битрейту, нехило так сжимается, что подразумевает приличную нагрузку при декодировании.
    Т.е. задержки по сравнению с олскульным вариантом игры, при пинге 90мс, такие:
    1) от устройства ввода данные летят туда (>90 мс)
    2) там видео поток кодируется (немножко мс)
    3) видео данные летят на клиентскую тачку (>90 мс)
    4) на слабой клиентской тачке видео декодируется (прилично мс, ведь тачка слабая)
    Как с такими задержками можно играть? Двинул мышей, а оно только через треть секунды на мониторе отреагировало?

    Или я что-то путаю?


    1. 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. Если посоветуете как померить реальные а не «воспринимаемые» задержки (не пинг а именно полную цепочку) — попробую померять.


      1. denis-isaev
        01.07.2018 17:23

        К сожалению, как померять не представляю. Я просто только на днях узнал про такой сервис на примере DROVA и вот теперь думаю покупать ли новый игровой комп или «оно на самом деле работает», поэтому присматриваюсь, Ваша статья очень в тему оказалась, сенкс :)
        Я так понимаю, что потенциальные минимальные задержки это где-то 20ms (пинги и кодирование/декодирование по 5 мс). Это если сервак в одном городе.
        Интересно, как такие задержки в динамичном шутере ощущаются )


        1. Gugic
          02.07.2018 09:47

          Гонял Doom образца 2016-го на playkey — никакого дискомфорта не было (но я не хардкорный геймер уже давно)


      1. UnhappyPanda
        02.07.2018 11:56

        p.p.s. Если посоветуете как померить реальные а не «воспринимаемые» задержки (не пинг а именно полную цепочку) — попробую померять.


        Можно воспользоваться любой программой записи экрана, которая выдает видео в 60 fps и умеет визуализировать щелчок мышкой. К сожалению на вскидку ничего предложить не могу, надо гуглить.

        Сначала протестировать какое-либо стандартное действие в игре (например переключение какого-либо пункта меню) на своей реальной машине, найти разницу в фреймах между визуализацией клика и появлением результата в игре. Потом повторить то же самое на удаленном сервере, посмотреть, изменилась ли задержка.


        1. hit_mankaa
          03.07.2018 09:31

          Как это мерять хорошо рассказывается на youtube канале Battle(non)sense, однако, нужна будет камера умеющая в видео 1200 fps, да и в целом там много достаточно интересных тестов для оценки «input lag» для игр.


          1. vikarti Автор
            03.07.2018 09:32

            Про вариант камерой у того же Parsec'а в блоге тоже есть. Но вот это… не самое доступное оборудование. У меня например такой камеры — нет.


          1. UnhappyPanda
            03.07.2018 10:59

            Можно попробовать как я писал с помощью бесплатной версии bandicam.


  1. 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.