Netcamp po raz pierwszy.

Nieco o Netcampie słyszałem, ale nigdy nie miałem okazji się wybrać. Albo mnie nie ciągnęło, albo nie miałem czasu. Wczoraj pierwszy raz nawiedziłem imprezę, głównie za sprawą prezentacji (współ)prowadzonej przez Malina. Krótkie wrażenia poniżej.

Organizacja Netcampu

Tematy były trzy, z czego okazało się, że w sumie tematycznie prezentacja na którą przyszedłem (FilesTube) jest najbardziej odległa od moich zainteresowań. Założenia prowadzenia prezentacji (szczytne) są spisane na stronie. Pierwszy mały zgrzyt – na miejscu, kilkanaście minut przed startem, prelegenci dowiedzieli się, że „ze względu na oszczędność czasu na podłączanie sprzętu” nie będą mogli prowadzić na swoim sprzęcie. Co prawda stanęło na tym, że i tak każdy prowadził na swoim sprzęcie (nawet na jednym Linuksie było – dało się uruchomić rzutnik ;-)), ale niesmak pozostał – o takich rzeczach uprzedza się grubo wcześniej, albo nie wygłupia się z takimi ograniczeniami – skoro ktoś chce „przymierzyć” wcześniej, czy wszystko działa, ew. skonfigurować, a potem tylko podłączyć (get real, i tak były przerwy po 10-15 minut między prezentacjami), to nie widzę sensu utrudniania.

Kolejne dwa minusy to: brak miejsca na kurtki/płaszcze (może coś było, ale słabo eksponowane, bo wielu ludzi siedziało z kurtkami) oraz słaba wentylacja. O ile kiepską wentylację jestem w stanie przyjąć do wiadomości (chociaż można przynajmniej w przerwie wietrzyć – w czasie prezentacji hałas z ulicy może przeszkadzać), to szatnię warto wyeksponować (jeśli jest) lub zrobić jakąś (zwykłe wieszaki w liczbie kilku starczą). No i jak widać, że minimum połowa ludzi kisi się z kurtkami, to można – chociażby zapowiadając przerwę – powiedzieć o szatni (jeśli jest). Tyle krytyki strony organizacyjnej – poza tym było OK, bez zgrzytów ze sprzętem i prowadzeniem.

Prezentacja pierwsza

Prezentacja pierwsza – klaster obliczeniowy na bazie komputerów poleasingowych. Trochę się kiedyś interesowałem tematyką sprzedaży mocy obliczeniowej i… to nie działa. Projekt cpushare.com (dead link) jest może nie tyle martwy, co nierozwijany, a była szansa na to, że każdy może handlować (w obie strony) mocą obliczeniową. Tymczasem założenia w prezentacji to – firmy pozbywają się sprawnego sprzętu (rzędu PIV 1GB RAM) po okresie leasingowym (płacąc firmie zajmującej się utylizacją), istnieją chętni na kupno dużych ilości mocy obliczeniowej, superkomputery są drogie (Galera ok. 7 mln zł), a koszty eksploatacji klastra (do Galery przyrównano klaster z 6 tys. komputerów) są pomijalne (nie tyle pomijalne, co niskie). Więc firmy oddadzą sprzęt za free OPP (tak, organizacja pożytku publicznego), która zajmie się budową klastra i będzie odsprzedawać moc obliczeniową.

Prawie wszystko fajnie, ale IMO to się nie spina finansowo (czego dowodzi upadek cpushare.com, działającego przecież w bardziej elastycznych warunkach). Licząc skromne 50W (IMO mało, bo tyle to sam procesor może wziąć, a płyta, a sprawność zasilacza… no ale OK) na pojedynczy węzeł w klastrze, dla 6000 sztuk mamy pobór mocy rzędu 300 kW. Prowadzący wspominał coś o UPSach, redundancji zasilania (dwie linie dosyłowe) oraz generatorach Diesla, ale dla 50W już sam prąd to minimum 15 zł miesięcznie na węzeł (dla wyszukanych danych sprzed 3 lat, IMO obecnie bardziej na miejscu byłaby cena 0,6zł/kWh zamiast 0,42 zł/kWh; wg taryfy dla domu, tu pewnie wejdzie inna taryfa, jeśli ktoś jest na bieżąco, to proszę skorygować), czyli ok. 1 mln zł rocznie (a jeszcze ciepło trzeba odprowadzić). Może przy współpracy z elektrociepłownią i odzyskiwaniem energii do ogrzewania się to zepnie. Może.

Jeśli jednak pobór prądu ma być krytyczny, to Nautilus ze swoimi 18 TFlops i poborem 35 kW wypada 3 razy lepiej (ok. 100kW/50TFlops) niż składak z prezentacji, dając oszczędności ok. 0,7 mln zł rocznie w porównaniu ze składakiem… Podsumowując: jak dla mnie stawianie czegoś takiego w Polsce mija się z celem. No i sama teza, że „będą chętni do kupienia mocy obliczeniowej” też wydaje się naciągana – w końcu jest cała armia ludzi, którzy chętnie moc sprzedadzą (obecnie nawet oddają za darmo – patrz BOINC – jakieś 4312 TFlops).

Prezentacja druga

Prezentacja druga – Optymalizacja serwisów internetowych na przykładzie FilesTube – czyli to, na co przyszedłem. Prezentacja ciekawa (bardzo kojarzyła mi się z niegdysiejszymi prezentacjami Allegro i Naszej Klasy na którymś PLNOG i spokojnie mogłaby obok nich się pokazać) tylko… nie związana z tematem, moim zdaniem. Dowiedziałem się sporo o serwisie, o historii rozwoju, sporo o rozwiązaniach (architektura, soft, hardware, wykorzystane technologie) stosowanych w przeszłości, obecnie oraz planach, o modelu biznesowym. Padła teza, kiedy (nie) optymalizować, ale IMO zabrakło przekonujących przykładów, czemu właśnie wtedy (jeśli dobrze zrozumiałem to dewizą jest robimy jak bądź, jak się przestaje wyrabiać, to patrzymy czemu i optymalizujemy ten fragment). OK, to – jak widać – działa, ale czy faktycznie jest najlepszym podejściem? Czy próbowano innego? Powiedzenie nasza droga jest dobra będzie zawsze prawdziwe w przypadku firmy/produktu, który odniósł sukces, ale nie znaczy to, że nie ma innych (w tym: lepszych) dróg (zwłaszcza, że – jak słyszałem na prezentacji – aktualnie mają pewien problem z peakami ruchu).

Tu kolejna rzecz, sukces i chwalenie się nim. Bardzo mi tego zabrakło, a 2 razy więcej UU, niż ma Nasza Klasa (24 mln vs. 12 mln, dane z prezentacji) to IMO powód do reklamy i serwisu, i firmy, i miasta. O firmie i serwisie było do niedawna cicho, trochę za dużo na prezentacji dostrzegłem podejścia „robimy to tak i tak, no i jakoś się udało”. Jasne, szczęście też trzeba mieć, sam dobry produkt nie gwarantuje (IMO zwł. w necie) sukcesu, ale – skoro przy zerowych nakładach na marketing – serwis odniósł ogromny sukces (nazywajmy rzeczy po imieniu) to brak chwalenia się mnie po prostu dziwi. Może zaważyła tematyka (podobało mi się „piractwo, jakie piractwo?”), ale jak sami twórcy mówią, współpracują z organizacjami zajmującymi się ochroną praw autorskich…

Gdybym nie miał porównania z Allegro i Naszą Klasą, to cała prezentacja byłaby dla mnie skali „a tu mam taki serwis i on się zmieniał tak a tak” – nie czułem skali zjawiska, powiedzenie, że coś się wykonywało kilkanaście godzin, a po optymalizacji kilka minut też nie oddaje tego, czy było tak fatalnie na początku napisane, czy było napisane wg standardowego podejścia i po prostu skala jest taka, że przestaje się ono sprawdzać.

Prezentacja trzecia

Prezentacja trzecia – czyli dlaczego IPv6. Najbardziej tematycznie mi pasująca i… zdecydowanie najsłabsza. O ile mi udawało się nadążyć za tokiem myślenia i skrótami myślowymi prowadzącego, o tyle jestem przekonany, że niesieciowcy zrozumieli niewiele. Było o wszystkim – co to IPv6, czemu nie IPv4, historia i rozwiązania historyczne, wszystko mocno chaotyczne plus skróty myślowe ocierające się o błąd rzeczowy (np. „przydzielanie adresów IP za pomocą RADIUSa”). Brak czytelnego przesłania, skakanie po łebkach, mnóstwo pojawiających się i znikających nazw, brak jasnych przykładów – słabo. Plus za chęci, plus za humor, ale… to się nie broni. Nie dla laików, nie w tak krótkim czasie. Na PLNOGu wykłady były dłuższe, głębsze, dla sieciowców i tamto miało sens, więcej było też o możliwych problemach.

Po tym wykładzie przeciętny słuchacz IMO albo doczyta (oraz znajdzie aktualne rozwiązania wśród historycznych), spróbuje u siebie włączyć i się zniechęci problemami, albo zada sobie pytanie „co mi da działanie mojego serwisu/strony/system po IPv6” i… niestety nie będzie umiał na nie odpowiedzieć. IMO przy tak skróconym czasie warto było odpuścić historię (która dodatkowo miesza słuchaczom w głowach) i skupić się na rozwiązaniach bieżących.

Podsumowanie

Cieszę się, że byłem. Co prawda spotkałem się z opinią, że ten Netcamp był wyjątkowo ciekawy, ale mi się podobało (a porównania nie mam) i cieszę się, że taka impreza jest organizowana. Zapewne przyjdę kolejny raz, jeśli będę miał okazję i nie tylko po to, by się ze znajomymi spotkać (a taka była oryginalnie moja motywacja).

Odczyt S.M.A.R.T. via USB w Debian Lenny.

Dyski potrafią się sypnąć – pewnie każdemu zdarzyło się odzyskiwać dane z dysku, który „umarł”. Dyski mechaniczne posiadają jednak bardzo przyjemną cechę, która może zapobiec utracie danych, czyli tytułowy S.M.A.R.T.. Tylko, że… nie działa w przypadku dysków podłączonych po USB. Przynajmniej w Debianie Lenny. Przynajmniej domyślnie.

Wikipedii przepisywać nie ma sensu, więc krótko: pod każdym systemem dostępny jest pakiet narzędzi smartmontools. Do niedawna pakiet obsługiwał dyski IDE, SCSI oraz SATA. Natomiast bezradny był w przypadku dysków podłączanych przez USB (przynajmniej pod Linuksem), co znacznie ograniczało jego skuteczność.

Byłem przekonany, że to kwestia protokołu, ale przy okazji rozmowy okazało się, że da się, co więcej, niektórze narzędzia pod Windows umieją to zrobić. Linux jak zwykle w tyle? Okazuje się, że niekoniecznie. Co prawda wersja z Debiana Lenny nie potrafi odczytać stanu dysku podłączonego po USB, ale wersja z testinga – jak najbardziej.

Pakiet jest dostępny w backportach, a dla tych, którzy wolą zrobić sami informacja – samodzielnie backportuje się trywialnie. Wystarczy dodać do /etc/apt/sources.list repozytoria ze źródłami dla testing, pobrać źródła smartmontools oraz libcap-ng w wersji dla testing (wajig source smartmontools; wajig source libcap-ng), przebudować na Lennym (dpkg-buildpackage) najpierw libcap-ng, zainstalować otrzymane libcap-ng0_0.6.2-4_i386.deb oraz libcap-ng-dev_0.6.2-4_i386.deb, następnie zbudować smartmontools. Tak naprawdę do działania potrzebne są tylko libcap-ng0_0.6.2-4_i386.deb oraz smartmontools_5.39.1+svn3060-1_i386.deb). I to wszystko. Od tej pory działa smartctl -A /dev/sda, gdzie sda to dysk w kieszeni USB.

Przydatna sprawa, zwłaszcza, że w nowym routerku dysk w kieszeni jest dość krytyczny – wszak wszystkie katalogi, które muszą być dostępne do zapisu są właśnie na nim…

PS. Podziękowania dla peceta za informację o tej zmianie w smartmontools.

Nie o takie CUDA chodziło…

Kupując laptopa wziąłem pod uwagę kartę graficzną (nie, żeby to było jakieś istotne kryterium, bo 99,9% spędza w 2D). W szczególności cieszyło mnie wsparcie dla CUDA – nawet mam plan zabawy w programowanie tego w chwili wolnej (czyli pewnie nigdy, ale…). Co prawda jest to niski model karty (Nvidia 8200M), na dodatek wersja mobilna i ze współdzielonym RAM, ale liczyłem, że w porównaniu do CPU to będzie ogień, czyli rząd wielkości szybsze.

Niedawno miałem okazję przetestować wydajność komputera, a zwłaszcza CUDA. Przy pomocy BarsWF (Windows only) zrobiłem szybki test. Wynik nierewelacyjny – ok. 45 M/sek, przy czym po 15 M/sek robi każdy rdzeń procesora i tylko 15 M/sek grafika. Nie wiem, czemu tak słabo (z tego, co rozmawiałem, sterownik nie powinien mieć wiele do powiedzenia – bardziej CUDA działa albo nie działa). W tej chwili jest standardowy z Windows Vista (system widzi ją jako 9200 IIRC).

Jakieś sugestie, jak zwiększyć wydajność CUDA na Nvidia 8200M? Wydajność na poziomie kolejnego rdzenia procesora to IMHO porażka. Sugerowane narzędzia do diagnostyki pod Windows (taktowanie karty, temperatura karty itp.)? Ograniczeń i problemów z przegrzewaniem się laptopowych Nvidii serii 8xxx jestem świadom, bardziej chciałem potestować, ile da się wycisnąć maksymalnie z tego sprzętu, niż liczyć coś produkcyjnie.

PS. Szczególnie wdzięczny byłbym, gdyby ktoś z podobną grafiką (Nvidia 8200M) pochwalił się swoimi wynikami z BarsWF.