-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Edek Pienkowski <e...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: kryzys jezyków kompilowanych do kodu 'natywnego'
Date: Sat, 14 Apr 2012 12:49:58 +0000 (UTC)
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 59
Message-ID: <jmbrpl$bn3$2@inews.gazeta.pl>
References: <jm74e2$g97$1@inews.gazeta.pl> <jm8l2q$k1b$1@inews.gazeta.pl>
<jm8lrt$hk4$1@inews.gazeta.pl> <jm910j$flf$1@polsl.pl>
<7930108.1291.1334317069612.JavaMail.geo-discussion-forums@ynbq18>
<jm9en8$5uv$1@inews.gazeta.pl> <jm9uk3$rrn$2@inews.gazeta.pl>
<jmaf6t$cgr$1@inews.gazeta.pl> <jmbkh8$bn3$1@inews.gazeta.pl>
<jmbmsq$gei$1@inews.gazeta.pl>
NNTP-Posting-Host: 81.219.27.0
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1334407798 12003 81.219.27.0 (14 Apr 2012 12:49:58 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sat, 14 Apr 2012 12:49:58 +0000 (UTC)
X-User: pieniekusenet
User-Agent: Pan/0.135 (Tomorrow I'll Wake Up and Scald Myself with Tea; GIT 30dc37b
master)
Xref: news-archive.icm.edu.pl pl.comp.programming:196743
[ ukryj nagłówki ]Dnia Sat, 14 Apr 2012 11:26:18 +0000, M.M. napisal:
> Edek Pienkowski <e...@g...com> napisał(a):
>
>> Ja miałem. Bawiłem się jedym algorytmem przez miesiąc, przepisując
>> często całość inaczej. Najgorsze było to, że czasami efekty były
>> odwrotne na Core2 niż na i7.
> Rozumiem że chodzi o zmiany implementacyjne, a algorytm ciągle był
> ten sam. Można wiedzieć jakie miałeś przyspieszenia pomiędzy "rozsądną"
> implementacją a tą najlepszą i co to za algorytm?
Sieć NN, nuda jak cholera. Każdy pseudo-neuron był połączony z
poprzednim(i) layerem(ami) na zasadzie kształtu - layer 2D,
kształt tego rodzaju, że obejmuje neurony "najbliżej", z tymi ma link,
chociaż mógł być "co któryś", jak w iteracji ze step.
Optymalizowałem uczenie, czyli forward pass, ocena, uczenie. Uczenie
na zasadzie zmian przy złym wyniku bez back-prop., potem jeszcze
wzmacnianie połączeń przy "dobrym". Funkcja typu clip (0.,1.),
ale binaryzowana 3-8 bitów na neuron
(przy 3: 0., 0. + 1./7. , ..., 1.). Pomijając gęstość
informacji na podstawie czytanych prac, słabo znam temat NN,
to binaryzowanie fajnie na CUDA działało, bo dużo więcej
się mieściło w shared, chociaż na starych kartach (1.3) to było
jeszcze przewidywalne, ale na cc 2.1 już nie miałem czasami pojęcia,
dlaczego coś jest szybsze lub, oczywiście z zaskoczenia, 30%
wolniejsze.
Jakkolwiek by się nie napisało algorytmu dostępy bywały mocno
nieregularne, to nie każdy-z-każdym. Na i7 lepszy był naiwny
algorytm, każdy link miał dwa floaty i kilka pointerów, alokowany
przez new, a na Core 2 lepsze było SoA, chociaż tu znowu
sporo zależało od "kształtu", ile linków na neuron i proporcji
do rozmiaru layera. Przy wielkich oczywiście pomagało tiling
ze względu na cache, ale ja zazwyczaj miałem dużo layerów
raczej niewielkich (nieliniowe mają inne
właściwości, jest sens robić więcej layerów, ilość informacji
w nieliniowych jest inna niż w liniowych, o ile znam temat;
w każdym razie to nie jest minimalizacja).
Tylko dlatego tak naprawdę sporo czasu na to poświęciłem,
że właśnie nie było to nic regularnego, a jednocześnie w miarę
niewielkie.
Różnice były rzędu kilku %, ale zdarzały się odchyły rzędu
20% gorzej. Całość po kompilacji trafiała do jednej wielkiej
metody, zmieniałem głównie layout danych, kolejność iteracji,
alignment, opcje typu fp+sse/sse z różnym skutkiem no i
to PGO. Oczywiście główną alternatywą był push albo pull,
swoje też dodawał random.
Coś czego do dzisiaj nie rozumiem: pierwsze przebiegi były
sporo wolniejsze, potem kilka ze 2-3% szybsze, potem plateau o ile
system czegoś akurat nie robił. Chyba na i7, nie pamiętam. Tego
że seria przebiegów miała ten peak nie rozumiem,
a sprawdziłem, że mi się wcale nie przywidziało, kilka razy.
Edek
Następne wpisy z tego wątku
- 14.04.12 20:43 Sebastian Biały
- 15.04.12 04:54 M.M.
- 15.04.12 11:37 Edek Pienkowski
- 15.04.12 12:11 Edek Pienkowski
- 16.04.12 22:01 AK
- 17.04.12 01:12 Andrzej Jarzabek
- 17.04.12 14:26 AK
Najnowsze wątki z tej grupy
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
Najnowsze wątki
- 2025-07-25 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-07-25 Skrobanie
- 2025-07-25 Lublin => Konsultant ds. Wdrożeń ERP (moduł FK) <=
- 2025-07-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-07-25 Re: Boeing Bad Dream (Koszmar) Liner rozbity w Delhi ...
- 2025-07-24 Re: Wypadek kolejowy na stacji Wiesiółka- analiza tragicznego zdarzenia z czerwca 2001 roku.
- 2025-07-23 Re: Tysiące wypadków na niebezpiecznych przejazdach kolejowych a Polskie Linie Kolejowe nic nie robią odlat, bo kierowca pociągu nie ginie
- 2025-07-23 Re: Tysiące wypadków na niebezpiecznych przejazdach kolejowych a Polskie Linie Kolejowe nic nie robią odlat, bo kierowca pociągu nie ginie
- 2025-07-23 Teoria Organizacji w Ujęciu Totaliztycznym - NOWA MONOGRAFIA
- 2025-07-24 Warszawa => MENA New Business Manager <=
- 2025-07-24 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-24 Fundacja Wolność od Religii domaga się wyjaśnień ws zawierzenia Powiatu Wschowskiego Maryi Królowej Polski
- 2025-07-23 Teoria Organizacji w Ujęciu Totaliztycznym - NOWA MONOGRAFIA
- 2025-07-23 Gdańsk => Programista Delphi <=
- 2025-07-23 Gdańsk => Programista Mainframe (z/OS, Assembler) <=