If you have account already, Log in here first

Zaloguj się
  • pl
    • cs
Menu

Przyśpieszyliśmy aplikację SpreadCharts na nowy poziom!

8 Sty 2018,

Nasza aplikacja SpreadCharts.com, która służy do kompleksowej analizy rynków towarowych cieszy się wzrastającą popularnością. W zeszłym roku wzrosła zarówno ilość nowych użytkowników, jak również liczba tych, którzy aplikację wykorzystują regularnie. Nie ma się co dziwić, aplikacja oferuje nie tylko świetne funkcje, ale też dziesiątki lat danych historycznych i to wszystko zupełnie za darmo. Żadne opłaty abonamentowe, restrykcje albo bannery reklamowe.

Cieszy nas bardzo takie zainteresowanie, jednak ma to również swoje minusy. Aplikacja stawała się powolna. To dotyczyło głównie okresów szczytu, kiedy większa ilość użytkowników jednocześnie chciała wyświetlać wykresy. Sytuacja uległa pogorszeniu również przez to, że w zeszłym roku dodaliśmy nowe obliczeniowo wymagające funkcje. Problem stał się tak powszechny, że musieliśmy działać. Kilka miesięcy temu postanowiliśmy przerwać nasz plan rozwoju i priorytetowo skupić się na tym, aby aplikacja działała szybciej.

Cieszy mnie fakt, że właśnie dziś uruchomiliśmy nową, znacznie szybszą wersję aplikacji. Chociaż na zewnątrz aplikacja wygląda tak samo, w środku wszystko uległo zmianie. Napisaliśmy kod aplikacji praktycznie od nowa.

 

Co oznacza to w praktyce?

  • 1) Wszystkie operacje na danych rynkowych przebiegają teraz błyskawicznie. Im bardziej skomplikowane obliczenie do zrobienia, tym szybsze przyśpieszenie w porównaniu do pierwotnej wersji aplikacji. Nie mówimy tu o przyśpieszeniu 10% albo 20%. W przypadku niektórych złożonych operacji, takich jak histogram contango, obliczenia są teraz szybsze 10-krotnie albo nawet 20-krotnie. Jak to możliwe? Przede wszystkim nasz kod źródłowy został zwektoryzowany. Co to znaczy? Mianowicie to, że komputer nie pracuje z poszczególnymi numerami, ale wpierw stara się je grupować do wektorów a dopiero na nich przeprowadzać grupowe operacje, tak jak je znamy z algebry liniowej. Te operacje (czyli nasz kod źródłowy) zoptymalizowaliśmy ponadto pod kątem nowych instrukcji niskiego poziomu AVX-512. Ta konfiguracja jest obecnie wdrażana tylko w najbardziej wymagających środowiskach uczenia maszynowego.
  • 2) Nasze najnowocześniejsze oprogramowanie wymaga najnowocześniejszego sprzętu. Tylko nieliczne procesory zbudowane w oparciu o najbardziej nowoczesną architekturę obsługują instrukcje AVX-512. Zatem byliśmy bezkompromisowi, wybierając procesory Xeon Platinum, przeznaczone do najbardziej wymagających zadań.
  • 3) Aplikacja jest teraz uruchomiona na dwu serwerach, zamiast pierwotnie jednego. Oddzieliliśmy obliczeniowo skomplikowany backeend od w miarę prostego frontendu. Te środowiska są poza tym bardzo różnorodne, zatem każdy z serwerów jest teraz zoptymalizowany dla swojej roli. Taka konfiguracja jest powszechna w dużych aplikacjach i usługach w chmurze. Dodatkowo każdy z tych dwu serwerów jest bardziej wydajny, niż pierwotny serwer.

 

Przyspieszenie jest najbardziej widoczne na wykresach takich jak histogram contango, średnie sezonowe albo analiza full carry. Obliczenia na tych wykresach są bardo obliczeniowo wymagające, podczas gdy ilość danych przesyłanych do użytkownika jest już niska. Tylko mniejsze przyspieszenie zobaczycie na wykresach takich jak cena historyczna lub wykresy magazynowe wahań sezonowych. Jest tak dlatego, że tylko niewiele obliczeń musi zostać wykonanych, natomiast wiele danych jest wysyłanych do użytkownika. W takim przypadku na szybkość wyświetlenia wpływa raczej szybkość łącza internetowego użytkownika oraz wydajność renderowania JavaScriptu na jego komputerze.

Zalecamy również wyczyszczenie pamięci podręcznej w przeglądarce internetowej, aby pobrać pliki dla nowej aplikacji.

 

Sam fakt tak znaczącego przyśpieszenie aplikacji jest powodem do radości. Ale to nie wszystko, jest więcej. Nowa architektura umożliwi nam wdrożenie nowych funkcji, które nie byłyby możliwe do zastosowania w poprzedniej wersji aplikacji. Rok 2018 będzie faktycznie bardzo interesujący 😉

Pobierż darmowy e-book

"Tajemnica zyskownych strategii"

ebook-pl

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *