-
Data: 2009-03-30 10:12:58
Temat: CUDA - przyszłość rozwoju procesorów i zmiany w technikach programowania ?
Od: "RedArt" <r...@t...tez.op.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Jako bazę dam artykuł:
http://www.nvidia.pl/docs/IO/55972/220401_Reprint.pd
f
W skrócie: mechanizmy pixel/vertex shaderów stosowane w kartach graficznych
są intensywnie rozbudowywane - o większy dostęp do pamięci współdzielonej, o
możliwości operowania
na złożonych typach danych itp.
W efekcie stopniowo dostajemy potężną moc obliczeniową drzemiącą w kartach
graficznych 'do zabawy'
w zastosowaniach zupełnie z grafiką niezwiazanych - z coraz bardziej
'normalnym' interfejsem
programistycznym. To tak od strony naszej - programistów. Powstaje
jednocześnie wymóg
modyfikacji głownego toku myślenia o konstrukcji oprogramowania - z
algorytmiczno-iteracyjnego
na danocentyczno-blokowy ;) Jest to ciekawe zagadnienie, z pewnością znane
już tym, którzy
siedzą głeboko w technikaliach przetwarzania baz danych czy konstrukcji
wydajnych procedur
ETL (extract-transform-load) w interfejsach międzysystemowych. Wymaga to
rewizji stosowanych
wzorców projektowych, przejrzenia praktycznej użyteczności stosowanych
obecnie technik obiektowych
itp - temat niewątpliwie bardzo szeroki i ciekawy.
Natomiast jest to także temat ciekawy od strony przyszłych architektur
mikroprocesorowych.
Nie da się ukryć, że w miarę rozwoju oprogramowania dostosowanego
(uwspółbieżnionego)
wg nowych reguł siła centralnej jednostki-procesora będzie miała znaczenie
coraz mniejsze.
Co najciekawsze wydaje się, że powstaje szansa na trwałe wybrniecie z
problemu różnic
architektonicznych(w rezultacie dających zupełnie inne języki maszynowe lub
znaczne różnice
w liście dostępnych instrukcji) powstających w miarę rozwoju
mikroporocesorów różnych
technologii i producentów - nowa technologia bowiem od początku kładzie
nacisk na ukrycie
najbardziej niskopoziomowych aspektów oprogramowania za pośrednim
interfejsem dostępu
stanowiącym dużo stabilniejszą warstwę funkcji-instrukcji lepiej
odzwierciedlającą potrzeby
programistyczne wyższego poziomu, skoncentrowane na organizacji danych i
procedur
biznesowych. Np. udaje siędo minimum zredukować wymóg ręcznej obsługi
współbieżności
(ochrona dostępu do współdzielonych zasobów, problemy typu deadlock czy
zagładzania
procesów).
Wracając do tematu oprogramowania: ciekawe, jak szybko języki takie jak Java
będa
zdolne do skorzystania z nowych możliwości - na najniższym poziomie powstaje
pytanie typu: czy da się w ogóle zintegrować istniejące w tym języku
mechanizmy wielowątkowości
(z instrukcjami synchronised/wait/notify) z nowym sposobem myślenia ? A idąc
wyżej:
jak głęboko trzeba zmodyfikować techniki obiektowe, powszechnie stosowane
wzorce projektowe ?
Jak organizować obiekty danych (różnych typów - polimorfizm) w wyraziste
bloki pamięci, tak
by na wyższym poziomie dalej przypominały one abstrakcyjne kolekcje ? A co
ze standardowymi
iteratorami i odpalaniem metod wirtualnych na obiektach danych, gdzie
różnorodność klas pociąga
za sobą różnorodność procedur ? Ogarnąć powiazania między obiektami ...
Tematów jest mnóstwo.
Zapewne są one jużdobrze znane tam, gdzie zagościł temat obiektowych baz
danych.
A jeszcze mały wtręt do AI.
Swego czasu pewien naukowiec opowiadał (rzekłbym: rozgorączkowanym głosem
...) o projekcie
CAM-Brain. W skrócie: chodziło o budowanie/hodowanie/uczenie złożonych
struktur neuronowych
skonstruowanych i działajacych w oparciu o tzw. automaty komórkowe. Automaty
komórkowe(sześciany)
stanowiły podstawowe cegiełki do budowanych w przestrzeni 3D ścieżek, po
których można było przesyłać
sygnały itp. Jednym z filarów tego projektu miała być zaawansowana
technologicznie pamięć, gdzie cechy
automatów komórkowych były zrealizowane już na poziomie sprzętowym. Cyk - i
w kilku cyklach
maszynowych miliony(...) komórek pamięci przechowujących dane poszczególnych
automatów
zmieniały stan - zgodnie z zaprogramowaną tablicą przejść, w zależności od
stanów sąsiadów
- innych najbliższych komórek pamięci. Każda komórka pamięci stanowiła więc
mini-procesor potrafiący
wykonać bardzo proste czynnosci - ale współbieżnie z innymi. Dygresja: Losy
projektu - no cóż ...
Jak wielu projektów ... ;) Na pewno po raz kolejny udowadnia, że problemy
tworzenia
sztucznej inteligencjie nie leżą w brakach mocy obliczeniowej (a na pewno
nie jest to problem
podstawowy).
Ale wychodząc z dygresji: kiedy pojawiły się mechanizmy pixel shaderów w
kartach graficznych,
pierwsza myśl, jaka mi przyszła do głowy, to: a, mamy już w domu w końcu tę
technologię
idealną do wspomagania automatów komórkowych, a w perspektywie rozwoju
dającą zupełnie
nowe możliwości obliczeniowe.
Technologia CUDA pokazuje, że ten potencjał jest intensywnie rozwijany, a
zapewne w najbliższym czasie
doczekamy siętakże ciekawych przykładów 'eksploatacji' - na początek w
oprogramowaniu
wspomagajacym obliczenia naukowe.
Następne wpisy z tego wątku
- 30.03.09 11:01 A.L.
- 30.03.09 11:32 RedArt
- 30.03.09 11:32 A.L.
- 30.03.09 11:38 RedArt
- 30.03.09 12:03 czas dOSa
- 30.03.09 12:11 czas dOSa
- 30.03.09 12:13 A.L.
- 30.03.09 12:14 A.L.
- 30.03.09 12:40 RedArt
- 30.03.09 13:03 Tomasz Gęguś
- 30.03.09 13:06 Tomasz Gęguś
- 30.03.09 15:42 Mateusz Ludwin
- 30.03.09 16:02 A.L.
- 30.03.09 16:28 Tomasz Gęguś
- 31.03.09 05:59 RedArt
Najnowsze wątki z tej grupy
- 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
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-01 jaki kretyn boziu uśpić :)
- 2025-06-01 Zdolny to legalnego prowadzenia samochodu w Anglii wykluczony z komisji wyborczej w Białymstoku
- 2025-06-01 nie ustąpiła moturowi?
- 2025-05-31 Skoro jest tak dobrze i TANIO to dlaczego jeszcze nie jeździmy na takich akumulatorach?
- 2025-05-31 Warszawa => IT Data Analyst (obszar Power BI) <=
- 2025-05-31 Warszawa => IT Hardware Specialist - Wsparcie i Konfiguracja <=
- 2025-05-31 Środa Wielkopolska => Konsultant wewnętrzny SAP FI/CO <=
- 2025-05-31 Gdańsk => PHP Developer <=
- 2025-05-31 Lublin => Delphi Programmer <=
- 2025-05-31 co to za obcęgi? [OT]
- 2025-05-30 Rondo :)
- 2025-05-30 Warszawa => Senior Account Manager <=
- 2025-05-30 Warszawa => Senior C++ Developer (analiza numeryczna i modelowanie) <=
- 2025-05-30 Gdańsk => Team Lead Data Engineer (Snowflake) <=
- 2025-05-30 Warszawa => Team Lead Data Engineer (obszar Snowflake) <=