Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Witam,

http://www.idg.pl/news/144664.html

moze warto zapoznac sie z OpenMP lub Intel TBB ;)

pozdrawiam,
Darek
Włodzimierz Jońca

Włodzimierz Jońca analityk -
programista

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Pojawia się pytanie, po co Zwykłemu Użytkownikowi wielowątkowe aplikacje do Codziennej Pracy Biurowej? (edytor tekstów, arkusz, jakaś prezentacja, email, przeglądarka?). 2 rdzenie z powodzeniem wystarczą. Do tej pory był 1 i też było ok. Po jaką cholerę 64 rdzenie w kompie sekretarki? Albo prezesa?

Do licha, w sumie programiście do pisana kodu tylko edytor potrzebny,
a tam 1 rdzeń wystarcza. Kompilacja to inna sprawa, ok.

Na razie sensowne zastosowanie procesorów wielordzeniowych widzę tylko
w nauce/technice (symulacje Monte Carlo!) No i rozrywce (PS3. X360)

Ale w kompach biurkowych? Koniec z wielkimi zakupami w wielkich
korporacjach?

Czyżby ziszczał się koszmar szefów Intela, AMD i całej reszty tej paczki, kiedy to poprzednia generacja procesorów jest wystarczająco dobra i nie ma potrzeby upgrade'u?

A może czegoś nie widzę?
Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Kiedys Bill Gates powiedzial bodajze, ze 640kB RAM powinno w zupelnosci wystarczyc kazdemu (wtedy standardem bylo srodowisko "konsolowo-tekstowe", ze tak to okresle). Dzisiaj wielu ludzi twierdzi, ze 1 core rowniez w zupelnosci wystarczyc powinien kazdemu (standardem jest srodowisko GUI 2D). Zobaczymy jak to wszystko bedzie wygladac za X lat ;)

p.s.
jesli chodzi o sam edytor dla programisty to jesli ktos korzysta z roznych ulatwien jak np. podpowiedzi to wie ile czasu w duzych projektach nieraz zajmuje srodowisku wyszukanie wlasciwej podpowiedzi. W takim przypadku i wszedzie tam gdzie jest duzo danych, ktore trzeba przeszukac "zrownoleglenie" moze polepszyc komfort pracy uzytkownika ;)

pozdrowka,
marinesDarek S. edytował(a) ten post dnia 24.03.08 o godzinie 15:19
Włodzimierz Jońca

Włodzimierz Jońca analityk -
programista

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

....ale kiedy Bill to mówił, to były używane maszyny "Big Iron', laboratoria Xeroxa pokazały GUI, mysz i ikony, DEC pokazł 64-bitową Alphe etc...

A jak wygląda ta śmiała wizja wymagająca 128 rdzeni CPU żeby pociągnąć VIM-a?
Gdzież o niej mogę poczytać?
Pewnie, w radeonach siedzi 320 "rdzeni" - ale one poganiają grafikę. Foldig@Home korzysta z nich również, ale do obliczeń naukowych.

Pamiętam te zapowiedzi: 1 rdzeń do aplikacji pierwszoplanowej, 2 na firewalla, 3 na skaner antywirusowy, 4 na jądro systemu.....

Wiem, że jutro może się wszystko zmienić, bo dziś wieczorem ktoś skończy
prace nad swoim genialnym wynalazkiem - przełomy mają to do siebie że przychodzą nagle. Ale na razie tego nie ma.

Po co Pani Sekretarce _dziś_ Quad CPU na biurku?
Po co Pani Sekretarce _jutro_ Quad CPU na biurku?

Jakie jest średnie wykorzystanie procesora w kompie używanym do pracy biurowej? 10%? 15%?

Co do wolnego działania kompa to zawsze najpierw warto dołożyć RAMu :)
I hierarchicznie organizować dane. To pomaga. Wiem o tym :D

Co do wizji interfejsu 3d jak z "Minority Report".
Wyobraża sobie ktoś stanie 14 przed takim ekranem i machanie (precyzyjne, przez 14 godzin, w zasadzie non-stop) rękami, bo deadline i trzema zamknąć projekt w wysłać kod do klienta?
Osobiście wole siedzieć i klepać w klawiaturę. No ale staromodny jestem.
Tadeusz Pyś

Tadeusz Pyś ..czyli samo zuo ;)

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

hm.. ale matrix plus bezposrednie lacze bedzie wymagalo ciezkiego sprzetu chociazby do poprawneg realtimeowej obslugi we/wy :)
Włodzimierz Jońca

Włodzimierz Jońca analityk -
programista

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

bardziej prawdopodobna wydała mi się wizja OVR-a Dukaja z Czarnych Oceanów - Ale w zasadzie wychodziło na to samo - zewnetrzy hardware obrabiał dane i wrzucał via wszczep do łba.

Gdzie to można kupić? :)
Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Jesli jest moc to na pewno zostanie jakos zutylizowana w mniej lub bardziej sensowny sposob ;)

No ale mnie akurat biurowe oprogramowanie dla sekretarek srednio intersuje. Siedze w dzialce oprogramowania inzynierskiego i tutaj akurat widze mase zastosowan :)

p.s.
a propos sredniej utylizacji CPU to mysle, ze w zdecydowanej wiekszosci przypadkow (nie tylko sekretarek) to zuzycie nie jest duze. Programisci korzystaja z mocy glownie gdy np. kompiluja, inzynierowie gdy puszczaja jakas symulacje itd ;)

Duzo firm pracuje nad zmiana swojego oprogramowania tak by korzystalo z multi-cores. To ze akurat o tym nie wiesz, nie znaczy, ze sie to nie dzieje ;)

pozdro,
marinesDarek S. edytował(a) ten post dnia 24.03.08 o godzinie 18:54
Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Włodzimierz Jońca:
A jak wygląda ta śmiała wizja wymagająca 128 rdzeni CPU żeby pociągnąć VIM-a?
Gdzież o niej mogę poczytać?

A to skad sie wzielo? Moze pomyliles wątki? ;)

Piszac o edytorze mialem na mysli zupelnie cos innego. Chyba nie zrozumiales, wiec napisze dokladniej o co mi chodzilo.

Czasem edytor robi cos wiecej niz tylko sluzy do wpisywania tekstu, a Vim (swoja droga moj ulubiony edytor) do takowych nalezy.

Jesli jest przykladowo wykonywana praca polegajaca na parsowaniu duzej ilosci plikow to z reguly zadanie to jest dobrze "rownoleglące się" ;) Jesli mocy jest duzo to mozna uzyc sprytniejszych lecz bardziej czasochlonnych algorytmow parsowania (np. lepiej rozpoznajacych kontekst, w ktorym dana podpowiedz ma sie pojawic). Podobnie moze byc z przeszukiwaniem duzej ilosci plikow - jesli zapoda sie skomplikowane wyrazenie regularne i to moc CPU, a nie operacje I/O (dysk) sa waskim gardlem to czemuz by tu nie skorzystac z dodatkowej mocy :)
Po co Pani Sekretarce _dziś_ Quad CPU na biurku?
Po co Pani Sekretarce _jutro_ Quad CPU na biurku?

To chyba jakies natręcto z tymi sekretarkami ;)
Jakie jest średnie wykorzystanie procesora w kompie używanym do pracy biurowej? 10%? 15%?

Przeciez w tym artykule, ktory podalem nawet nie padlo slowo 'biurowe'. Moze by tak dokladniej czytac to co sie komentuje ;)
Co do wizji interfejsu 3d jak z "Minority Report".
Wyobraża sobie ktoś stanie 14 przed takim ekranem i machanie (precyzyjne, przez 14 godzin, w zasadzie non-stop) rękami, bo deadline i trzema zamknąć projekt w wysłać kod do klienta?
Osobiście wole siedzieć i klepać w klawiaturę. No ale staromodny jestem.

A to skad sie wzielo? hmmm

Wujek Dobra Rada radzi - zamiast wymyslac niestworzone rzeczy, stawiac wlasne hipotezy, a nastepnie je obalac sugeruje wziac gleboki oddech i ochlonac ;)

Multi-cores nie sa takie zle ;)

pozdrawiam,
marinesDarek S. edytował(a) ten post dnia 24.03.08 o godzinie 20:36
Karol Z.

Karol Z. Programista,
elektronik

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Uczyć się to chyba zawsze warto...? ;) Nawet jeśli stosować nie będę, to wcześniej czy później wykorzystam w projekcie w przyszłości.

Fakt, w tym momencie sam jeszcze nie do końca widzę sens, choć nie zarzekam się, że nie będę, dajmy na to, za miesiąc stosował takich rozwiązań.
Wiele wskazuje na to, że ilość obrabianych danych wzrasta, nie maleje, zatem warto pomyśleć nad tym jak to wszystko ogarnąć. Równoległe przetwarzanie może być dobrym rozwiązaniem.
Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Karol A. Z.:
Uczyć się to chyba zawsze warto...? ;)

ooo wlasnie :)

Standard OpenMP ma juz bodajze jakies 10 lat, wiec zapotrzebowanie na tego typu biblioteki (a wiec i software :)) jest od dawna. Na dlugo zanim multi-cores x86 trafily pod strzechy. Przykladowo VStudio mial wsparcie dla OpenMP dopiero w wersji 2005.

No ale kto nam kaze ograniczac sie do platformy x86. Taki Sun UltraSPARC T1 albo T2 to jest dopiero prawdziwy multi-cores'owy wymiatacz ;)

Swoja droga o ile OpenMP jest bardziej takie "fortranowe" to Intel TBB jest juz stricte pod C++, nowsze i bardziej zblizone do tego co prawdpodobnie bedzie zawarte w nowym standardzie C++0x.
Nawet jeśli stosować nie będę, to wcześniej czy później wykorzystam w projekcie w przyszłości.

Fakt, w tym momencie sam jeszcze nie do końca widzę sens, choć nie zarzekam się, że nie będę, dajmy na to, za miesiąc stosował takich rozwiązań.
Wiele wskazuje na to, że ilość obrabianych danych wzrasta, nie maleje, zatem warto pomyśleć nad tym jak to wszystko ogarnąć. Równoległe przetwarzanie może być dobrym rozwiązaniem.

Wlasnie - tym bardziej, ze gdy w gre wchodzi duzo danych to z reguly da sie znalezc jakis sposob na ich rownolegle przetwarzanie.

Mysle, ze kazdy kto napisal w zyciu chociaz jeden projekt, w ktorym wazna byla wydajnosc (bez wzgledu na to czy byl to jakis parser, 'wyszukiwarka', kompilator, symulator, baza danych (i niekoniecznie mam tu na mysli engine bazy SQL ;)) czy cokolwiek innego) to wie jak wyglada walka o kazdy bit i milisekunde, podczas gdy wstretne QA podrzuca coraz to gorsze "test-cases", ktore niwecza nasze wysilki ;)

No ale zawsze mozna bylo powiedziec, ze pojawia sie nowsze, szybsze procesory i uzytkownik bedzie zadowolony. Jednak gdy "zegary procesorow" stanely skonczyl sie ten "darmowy lunch" - trzeba zakasac rekawy i wziac sie do roboty The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software ;)

pozdrawiam,
marines
Włodzimierz Jońca

Włodzimierz Jońca analityk -
programista

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Oj, coś z czytaniem u niektórych kiepsko.
A może z czytaniem i zrozumieniem co się przeczytało?

Napisałem wyraźnie, że widzę zastosowanie procesorów wielordzeniowych w nauce i technice. I podałem przykład symulacji Monte Carlo, jako bardzo zyskującej na wielordzeniowości procesorów (Albo wieloprocesorowości komputerów :) ).
Każdy, kto choć raz w życiu je robił (choćby na studiach,
w ramach ćwiczeń z metod numerycznych) wie, że jest to
idealna rzecz do zrównoleglenia.

I następnie zadałem pytanie - po co zwykłemu użytkownikowi wiele rdzeni w procesorze.

Po mętnej odpowiedzi (tej z Billem) ponowiłem pytanie stosując redukcję do absurdu (128 rdzeni dla VIM-a). To taki chwyt erystyczny. Uprawniony posłużeniem się Billem G. jako autorytetem.
W niesprawdzonych przepowiedniach :), ale zawsze!

Sekretarka pojawiła się jako uosobienie Zwykłego Użytkownika,
używającego oprogramowania biurowego. Przeciwieństwo
osób w pełni wykorzystujących komputery wieloprocesorowe /wielordzeniowe
w nauce i technice.

Odpowiedzi (po co owej sekretarce quad) nie uzyskałem, a po kilku postach dowiedziałem się że nie uzyskam, bo to nie w kompetencji autora, kŧóry widzi obecnie zastosowanie tylko w .... oprogramowaniu inżynierskim, które sam tworzy.
Eeeee, nauka i technika?? :)
Nie można było od razu tak?

I tak dalej, i tak dalej.

Uszczypliwości ad personam pomijam.

W sumie chodziło o reklamę OpenMP i intelowskich TBB.

Nie można było napisać 1 posta jakoś tak:

"Zajmuje się tworzeniem oprogramowania inżynierskiego
i, idąc z trendami technologii, która daje nam procesory wielordzeniowe,
tworze programy które na nich doskonale działają.
W moich projektach używam OpenMP i Intel TBB, które na podstawie własnych doświadczeń szczerze polecam!"?

W powyższy tekst, wedle uznania, wstawić linki.

Echhh.

Z mojej strony EOT.Włodzimierz Jońca edytował(a) ten post dnia 24.03.08 o godzinie 22:42
Darek Ś.

Darek Ś. Senior Software
Engineer, Splunk

Temat: Nie ma kto pisać aplikacji na procesory wielordzeniowe?

Witam ponownie,

No faktycznie przyznaję, że przegiąłem. Nie mam nic na swoje usprawiedliwienie hmmm...
Możliwe, iż to wynika z faktu, że zęby zjadłem na przekonywaniu tych i owych do podjęcia decyzji w sprawie multi-cores (w zastosowaniach, którymi zajmowałem się w pracy). Ponieważ było to często trudne i mozolne to reakcje moje są czasem zbyt przesadne, że tak to określę - taka trauma zawodowa ;)

Za uszczypliwości również _przepraszam_ - były niepotrzebne. Zrzucę to na karb kiepskiej "wiosennej" pogody za oknem, która negatywnie rzutuje na sampoczucie ;)

Wydaje mi się, iż w świecie rzeczywistym dogadalibyśmy się łatwiej i szybciej niż na forum :)

pozdrawiam,
Darek Slusarczyk

Następna dyskusja:

Kto poszukuje pracy jako pr...




Wyślij zaproszenie do