Oba te bardzo rozbudowane programy czy raczej sieć połączonych z sobą programów i skryptów zostały stworzone w celu zautomatyzowania procesu renderingu na farmie renderującej. Czym jest automatyczna farma renderująca? W najprostszych słowach to rozwiązanie hardwarowo softwarowe, pozwalające zewnętrznemu użytkownikowi posiadającemu autoryzację zrealizować rendering swojej sceny korzystając z dedykowanej do tego zadania mocy obliczeniowej. W idealnych warunkach taki klient może wykonać całe zadanie bez nawet pojedynczego kontaktu czy interwencji z personelem obsługującym taką farmę.
Od razu należy przyjąć iż taka idealna sytuacja jest zjawiskiem bardzo rzadkim, acz możliwym do zrealizowania. Wymaga ona zbudowania szeregu rozwiązań informatycznych, które zrealizują następujące zadania:
- Prześlą scenę 3D wraz ze wszystkimi niezbędnymi plikami i asetami z komputera klienta na klaster obliczeniowy. Warto tutaj dodać, iż ta pozornie prosta czynność oznacza odnalezienie wszystkich podlinkowanych przez klienta plików ich spakowanie, a następnie rozpakowanie na naszym klastrze obliczeniowym oraz przelinkowanie wszystkich plików do ich aktualnego miejsca zapisu.
- Określenie materiału do renderowania w tym zakresu klatek, rozdzielczości, rodzajów plików wyjściowych.
- Rozdział zakresu klatek jako zadań obliczeniowych dla przyporządkowanych dla zadania nodów obliczeniowych (serwerów).
Wszystko to musi zostać zrealizowane przy pełnej zgodności oprogramowania, silnika renderującego oraz wszystkich używanych przez klienta pluginów.
W przypadku naszego rozwiązania klient instaluje nasz plugin do swojego oprogramowania (na przykład 3D Studio Max), a następnie za pomocą pluginu uruchamia rendering na naszej farmie.
Następnie nasz system przydziela zasoby obliczeniowe w zależności od priorytetu klienta oraz wymogów sprzętowych, zwykle według zasady jedna klatka animacji renderowana jest przez jednego noda.
Wszystko to wydaje się być banalne, ale stworzenie tego rozwiązania zajęło ponad dwa lata wytężonej pracy zespołowi programistów.
A gdy byliśmy gotowi wystartowaliśmy jako startup z nową usługą.
Co nam dała automatyzacja? Otóż dzięki automatycznemu renderingowi mogliśy dziesięciokrotnie zwiększyć ilość obsługiwanych klientów. Należy tutaj zwrócić uwagę na to, iż wszystkie powyżej wymienione czynności wcześniej wykonywane musiały być przez człowieka. Co więcej czynności te mają charakter mechanicznych, powtarzalnych i obarczonych dużym ryzykiem błędu. Ale co najważniejsze były one czasochłonne i przekładało się to na ilość możliwych do obsłużenia klientów.
Jednak po wprowadzeniu systemu automatycznego to wąskie gardło zostało zlikwidowane i pojawiło się kolejne czyli dostępna moc obliczeniowa. Ideą naszej usługi było stworzenie jej maksymalnie skalowalną, tak, aby zwiększenie ilości klientów nie powodował przeładowania naszych pracowników i spowolnienia świadczenia usługi. Wciąż pozostawał jednak aspekt ilości mocy obliczeniowej, jaką mogliśmy zaoferować. To oznaczało dla nas konieczność podjęcia decyzji, która w istocie była wyborem między łatwym działaniem, uzależniającym nas od zewnętrznych, gigantów w dziedzinie IT, lub też próbą zrealizowania własnej wizji firmy przy zachowaniu jej niezależności. Rynek mocy obliczeniowej oferuje możliwość wynajmowania serwerów, w tym serwerów obliczeniowych, w niemal nieograniczonej liczbie. Mogliśmy tak jak część z naszych konkurentów zamiast własnych inwestycji sprzętowych wynajmować je od takich gigantów jak Google czy Amazon. Oznaczałoby to skrócenie naszej usługi do swoistej “nakładki” na ofertę tych podmiotów. Mogliśmy wynajmować od tych podmiotów serwery, które wykorzystywaliśmy do świadczenia naszej usługi. W takim układzie nie musielibyśmy inwestować więcej w hardware i moglibyśmy się skupić wyłącznie na naszej usłudze.
Innym rozwiązaniem było stałe poszerzanie naszej bazy sprzętowej, tak, aby móc obsługiwać coraz to większych klientów.
I właśnie tutaj cała na biało wjechała pomoc Unii Europejskiej, czyli projekt nakierowany na niemal podwojenie naszej mocy obliczeniowej. Był to dla naszej firmy okres gwałtownego wzrostu i bardzo wytężonej pracy, jednak dzięki temu projektowi o nazwie: “W pełni automatyczny rendering dla polskich i zagranicznych dużych klientów biznesowych, w tym studiów filmowych” mogliśmy zacząć obsługę dużych podmiotów. Pieniądze były niebagatelne bowiem wartość projektu przekracza osiem milionów złotych. Była to zatem dziesięciokrotnie wyższa kwota, niż środki, które otrzymaliśmy od venture capital na start zaledwie dwa lata wcześniej.
Tym razem byliśmy mądrzejsi… odrobinę. Postawiliśmy na jednorodne serwery obliczeniowe, z założeniem, że potrzebujemy małego klastra bardzo szybkich serwerów do obsługi klientów biznesowych i dużej ilości wolniejszych serwerów dla mniej wymagających klientów. Niestety nie wolno nam się pochwalić, jakie firmy i filmy obsługiwaliśmy, ale myślę, że każdy w Polsce widział przynajmniej dwie lub trzy animacje, które zostały stworzone na naszych serwerach. Zresztą nie tylko w Polsce, bowiem rodzimy rynek okazał się być dla nas za mały. Stąd też położyliśmy szczególny nacisk na internacjonalizację naszej działalności, podejmując współpracę z licznymi reselerami za granicą, a najważniejszym okazał się rynek koreański. Mowa oczywiście o Korei Południowej, gdzie jak się okazało nie istniała wtedy żadna konkurencyjna farma renderująca, a sam koncept outsourcing mocy był zaskakujący. Dlatego jeśli czyta to jakiś fan k-popu, to łatwo może się domyślić, kto wyrenderował efekty specjalne do jego ulubionych teledysków.
Co ciekawe i co doskonale definiuje prędkość postępu technologicznego, to w tym miesiącu oddajemy do recyclingu 360 serwerów obliczeniowych, które kupiliśmy w ramach tego projektu. Postęp technologiczny w dziedzinie IT jest nadal bardzo szybki, a Prawo Moore’a, które stanowi, iż moc obliczeniowa komputerów będzie się podwajać co 18 miesięcy, nadal pozostaje prawdziwe, przynajmniej dla superkomputerów.
Projekt zakończył się wielkim sukcesem, pozwolił nam na nawiązanie równorzędnej walki z największymi podmiotami świadczącymi podobne usługi na całym świecie.
Jednocześnie to właśnie ten projekt uświadomił nam wagę stałego podejmowania prac B+R w tak wysoce konkurencyjnym środowisku, jak usługi renderingu na automatycznej farmie renderujacej. Dzięki temu projektowi uświadomiliśmy sobie, iż sama moc obliczeniowa dedykowana renderingowi, nawet jeśli jest to największy zasób mocy obliczeniowej w Polsce nie wystarczy dla stałego i pewnego rozwoju firmy.