Jump to content
Forum Kopalni Wiedzy

Recommended Posts

Anwar Gholoum, jeden z inżynierów zatrudnionych w intelowskim Laboratorium Technologii Mikroprocesorowych, opublikował na oficjalnym blogu Intela wpis, w którym zwraca programistom uwagę na poważne zmiany, jakie zajdą w najbliższych latach.

Gholoum wspomina o rozmowach, jakie toczy z innymi inżynierami. Z jednej strony od lat mówi się o tym, że osoby rozwijające oprogramowanie starają się jak najmniejszym kosztem przystosować je do pracy na dwu- czy czterordzeniowych procesorach. Z drugiej zaś, inżynierowie już dyskutują o procesorach przyszłości, zawierających dziesiątki, setki, a nawet tysiące rdzeni. W przypadku takich procesorów taktyka "oszczędnego" programowania się nie sprawdzi.

Obecnie programiści w dość prosty sposób przystosowują np. gry napisane dla procesorów jednordzeniowych, do współpracy z czterordzeniowymi układami. Wystarczy, że "rozbiją" pojedynczy wątek na kilka oddzielnych: jeden odpowiedzialny za przetwarzanie muzyki, drugi za grafikę, trzeci za sztuczną inteligencję. Taka taktyka zapewnia spore oszczędności, gdyż "rozbite" wątki korzystają z pierwotnego kodu pojedynczego wątku, więc ich przygotowanie nie wymaga dużo pracy. Zmiany takie powodują pewne zwiększenie wydajności, gdyż każdy z wątków może być przetwarzany przez osobny rdzeń. Jeśli zatem rozdzielimy oryginalny wątek na 4, to będą one korzystały z 4 i tylko z 4 rdzeni.

Gholoum uważa, że programiści powinni przygotować się do całkowitej zmiany podejścia. Tak naprawdę procesory przyszłości będą wymagały przepisania niemal całego kodu tak, by każdy z wątków mógł skorzystać z dowolnej dostępnej liczby rdzeni. Dopiero wtedy w pełni wykorzystamy wydajność wielordzeniowych procesorów.

Już w tej chwili istnieją techniki, które działają właśnie w ten sposób. Bardzo dobrze skaluje się ray tracing, czyli śledzenia światła w wirtualnych scenach. Wykorzystywane w tym przypadku algorytmy są tak skonstruowane, że dołożenie kolejnych rdzeni powoduje zwiększenie prędkości przetwarzania, gdyż potrafią one skorzystać z dodatkowych mocy obliczeniowych.

Większość aplikacji jest jednak napisanych tak, że ich skalowanie będzie wymagało olbrzymiego nakładu pracy. Tym bardziej, że zarówno współczesne narzędzia developerskie i testowe oraz języki programowania są mocno zorientowane na przetwarzanie jednowątkowe.

Gholoum zauważa, że programiści specjalizujący się w rynku HPC (high-performance computing) od lat wiedzą o problemach związanych z przetwarzaniem wielowątkowym. Osoby programujące na rynek konsumencki jak dotąd nie przejmowały się kłopotami, z jakimi musieli zmagać się ich koledzy oprogramowaujący potężne klastry. W najbliższych latach może się to zmienić.

Share this post


Link to post
Share on other sites

A po co się bawić w dzielenie wątków starych programów na różne rdzenie? Przecież za jakiś czas każdy program napisany w dzisiejszych czasach będzie śmigał bez problemu na jednym rdzeniu. Co nie zmienia faktu, że trzeba jak najszybciej zmienić podejście do programowania aby tworząc nowe, bardziej wymagające aplikacje, potrafiły one wykorzystać w pełni możliwości sprzętu.

Share this post


Link to post
Share on other sites
Guest macintosh

"Chętnie zobaczę kilkusetstronicowy PDF Twojego autorstwa ze szczegółowymi wyliczeniami i analizami laboratoryjnymi."

Share this post


Link to post
Share on other sites
"Chętnie zobaczę kilkusetstronicowy PDF Twojego autorstwa ze szczegółowymi wyliczeniami i analizami laboratoryjnymi."

 

Mniej kontaktów z m.......m uchroni twoje PM przed przekodowaniem (w agenta Smitha) ;D

Share this post


Link to post
Share on other sites

"A może lepiej żeby każdy program z osobna obsługiwał inny rdzeń. (rzadko jedna tylko aplikacja jest otwarta)"

Nie lepiej bo za jakiś czas rdzeni będzie setki a może i tysiące w jednym procesorze a programów kilka - kilkadziesiąt. Problem w tym ,że zazwyczaj korzystamy z jednego głównego programu np. gry ,który potrzebuje większości mocy obliczeniowej i trzeba go tak zaprojektować aby te wszystkie rdzenie efektywnie wykorzystać a to już wiąże się z zupełnie innymi sposobami programowania niż obecnie stosowane.

Inną sprawą jest to że pojedyncze rdzenie za bardzo nie przyspieszą w następnych latach bo zbliżamy się do kresu wykorzystania materiałów (światło w krzemie szybciej nie poleci) i taktowanie rdzeni dużo większe nie będzie stąd kierunek rozwoju procesorów wielordzeniowych.Zasobożerność aplikacji ciągle rośnie i raczej będzie rosnąć ,więc taktyka 1 rdzeń jedna aplikacja dość szybko się załamie.

Share this post


Link to post
Share on other sites

To może procesor sam powinien dzielić swoje zadania pomiędzy poszczególne rdzenie (przydzielać dynamicznie ilość rdzeni do odpowiednich najcięższych zadań) 8)

Share this post


Link to post
Share on other sites
Guest macintosh

Moim celem przekodowanie jest.

Gdyby środowisko nie było wielozadaniowe niepotrzebowalibyśmy wielordzeniowców.

OS powinien rozdzielać zadania.

Używając wielordzeniowca unikasz konieczności poświęcania czasu procesora na "podział".

Nie "najcięższych zadań" tylko "o najwyższym priorytecie".

 

mistyfikator(!!)

Share this post


Link to post
Share on other sites

OS już rozdziela zadania i robi tak jak robi dużo lepiej nie będzie. Nie można obsługi wielu rdzeni zwalić na procesor o ile proste instrukcje już są rozdzielane w procesorach wielopotokowych o tyle skomplikowane programy nie dadzą się tak łatwo podzielić jeśli ich się odpowiednio nie zaprojektuje. Oczywiście procesor będzie przydzielał na niskopoziomowym etapie poszczególne zadania do wolnych rdzeni ale to aplikacja wie ile czego potrzebuje a nie procesor. Jak napiszesz aplikację jednowątkowo co będzie wykonywać operacje np. tylko w jednej ustalonej kolejności a będzie wykonywać skomplikowane obliczenia to ani procesor ani OS nie przydzieli jej na kilka rdzeni bo nie będzie jak. To programista w fazie projektowania będzie musiał myśleć jak to zaprojektować aby się dało to wykonać na wielu rdzeniach jednocześnie wykorzystując ich moc. A to jest niestety bardzo skomplikowane.

Share this post


Link to post
Share on other sites
OS już rozdziela zadania i robi tak jak robi dużo lepiej nie będzie. Nie można obsługi wielu rdzeni zwalić na procesor o ile proste instrukcje już są rozdzielane w procesorach wielopotokowych o tyle skomplikowane programy nie dadzą się tak łatwo podzielić jeśli ich się odpowiednio nie zaprojektuje. Oczywiście procesor będzie przydzielał na niskopoziomowym etapie poszczególne zadania do wolnych rdzeni ale to aplikacja wie ile czego potrzebuje a nie procesor. Jak napiszesz aplikację jednowątkowo co będzie wykonywać operacje np. tylko w jednej ustalonej kolejności a będzie wykonywać skomplikowane obliczenia to ani procesor ani OS nie przydzieli jej na kilka rdzeni bo nie będzie jak. To programista w fazie projektowania będzie musiał myśleć jak to zaprojektować aby się dało to wykonać na wielu rdzeniach jednocześnie wykorzystując ich moc. A to jest niestety bardzo skomplikowane.

 

Dzięki , ubogacające  to było..

Share this post


Link to post
Share on other sites
Guest macintosh

ozeo: Dzięki, że napisałeś.

To skomplikowane coś nie jest(zgaduje sobie), na pewno opisał to już jakiś matematyk.

W zasadzie programowanie staje się

nudne, męczące i zupełnie, ni w cholere ja pierdziele, nie można mieć satysfakcji

z bloków programów na oddzielne wątki tylko dlatego, że kompilator nie ma preimplementowanego poszukiwania optymalnego rozkładu wątków- program instalacyjny mógłby być zrobiony tak, że dobiera ilość wątków dla kompa na którym mamy wielordzeniowca.. i głupiutkie by to nie było.

Share this post


Link to post
Share on other sites

Jak to nie ma? Są kompilatory do obsługi wieloprocesorowości i tworzenia zrównoleglonego kodu. Modele matematyczne i naukowe opracowania także są. Ale wciąż programista musi (choć kompilatory także same mogą podejmować się tego, lecz nie zawsze jest to optymalne) oznaczyć potencjalne miejsca zrównoleglane - są to zasadniczo czasochłonne pętle, które mogą być wykonywane blokami na osobnych rdzeniach/wątkach, bez utraty spójności i zbędnych synchronizacji.

Share this post


Link to post
Share on other sites

To może procesor sam powinien dzielić swoje zadania pomiędzy poszczególne rdzenie (przydzielać dynamicznie ilość rdzeni do odpowiednich najcięższych zadań) 8)

Weźmy 2 * 2 + 2

Dla procesora to kod postaci mniej więcej takiej:

SET REGISTER_A 2

MULTIPLY A 2

ADD A 2

RETURN A

 

Jak widzisz, nie możesz podzielić pracy miedzy 2 rdzenie, gdyż nie zwrócisz wyniku póki nie dodasz, a nie dodasz póki nie pomnożysz itd.

Chodzi o to aby pisać programy w taki sposób aby jak najdłuższe sekwencje komend były niezależne.

 

Inny przyklad, biznesowy.

Masz w w bazie dane, a masz je wyslac przez siec. Masz do dyspozycji procedure ktora pobiera dlugi ciag binarnych danych z bazy oraz procedure ktora wysyla dane do przegladarki.

Wielu programistow pobierze dane z bazy i wysle je do przegladarki.

Trudniej jest zrobić tak aby jednocześnie, w czasie pobierania danych z bazy, wrzucać je do bufora, z którego w tym samym czasie, brać ściągnięte już dane i wysyłać do przeglądarki, kasując z bufora. Trzeba pilnować sytuacji gdy miejsce na buffor zostanie cale zapełnione oraz gdy nie ma na razie informacji w buforze. Poza tym trzeba pokona lek przed programowaniem wielowątkowym.

Share this post


Link to post
Share on other sites

uważam, że przykład dokera z 2*2+2 doskonale oddaje problem wielowątkowości, ale wydaje mi się, że należy pisać tak programy, aby jak najkrótsze sekwencje były niezależne, ponieważ wtedy można efektywniej wykorzystać rdzenie (jeden wątek czeka krócej na zakończenie innego), trudno też mówić o niezależności wątków, przeważnie posiadają dostęp do wspólnych danych, dysków, więc długie wątki mogą blokować dane, przez co w związku z integralnością również inne wątki.

Ciekawi mnie na ile ten problem dotyczy wirtualnych maszyn np. java, czy też .NET, co prawda java pozwala pisać programy korzystając z wielowątkowości, ale nie jestem pewien na ile jest to "tłumaczone" na wątki przez maszynę wirtualną.

Jeszcze dodam, że moim zdaniem żaden software czy też hardware nie zrzuci z programisty konieczności zmienienia podejścia do pisania kodu.

Share this post


Link to post
Share on other sites

inżynierowie już dyskutują o procesorach przyszłości, zawierających dziesiątki, setki, a nawet tysiące rdzeni.

 

ta chcial bym zobaczyc plyte glowna z slotem na tysiac rdzeniowy procesor biorac pod uwage iz postep minaturyzacji nie bedzie szedl w nieskonczonosc.

Share this post


Link to post
Share on other sites

postęp miniaturyzacji pewnie i nie będzie szedł w nieskończoność, ale skoro można wyprodukować procesor z setkami milionów tranzystorów, to czemu nie z setkami rdzeni, poza tym pewnie się czepiam ale chyba od czasów inteli trójek (nie wszystkich) nie produkują już procesorów na sloty tylko na gniazda, więc ciężko może być zobaczyć nawet 2 rdzenie na slocie.

Share this post


Link to post
Share on other sites

postęp miniaturyzacji pewnie i nie będzie szedł w nieskończoność, ale skoro można wyprodukować procesor z setkami milionów tranzystorów, to czemu nie z setkami rdzeni, poza tym pewnie się czepiam ale chyba od czasów inteli trójek (nie wszystkich) nie produkują już procesorów na sloty tylko na gniazda, więc ciężko może być zobaczyć nawet 2 rdzenie na slocie.

 

przyznaje zasugerowalem sie nazwa z angielskiego "socket".

tylko zauwaz ze zblizamy sie do granicy (miniaturyzacji ) gdzie bedzie obowiazywala mechanika kwantowa a nie klasyczna  wiec nici z dalszej minaturyzacji wiec obecne rdzenie duzo nie straca na wielkosci wiec tysiac rdzeniowy  procesor bedzie pewnie dosc spory.

Share this post


Link to post
Share on other sites

Sądzę, że już teraz bez wzięcia pod uwagę mechaniki kwantowej nie udałoby się tworzenie najnowszych procesorów (mikroskopowy opis zjawisk transportu - przewodnictwo prądu w metalach i półprzewodnikach).

Poza tym kto mówi, że tysiące rdzeni nie będzie właśnie dzięki tranzystorom złożonych z pojedynczych, elektronów.

Share this post


Link to post
Share on other sites

Na razie mamy 45nm, a zejście do ok. 22nm to zajmie jeszcze dobrych parę lat. Na pewno czekają nas jeszcze procesory 8- i 16-rdzeniowe. A potem to zobaczymy :) Intel i AMD na razie nie ujawniają planów na dalsze lata. Choć wiem, że Intel majstruje coś z optyką. Także komputery kwantowe to raczej odległa perspektywa, a nawet jak tradycyjne procesory krzemowe wyjdą z użytku, to wejdą optyczne (istnieją jeszcze inne pomysły, takie jak np procesory magnetyczne czy tzw. balistyczne).

 

A tak w ogóle, nie wszystko sprowadza się tylko do wymiaru technologicznego i ilości rdzeni. Przemyślana architektura jest kluczem do sukcesu (jak w przypadku Core2Duo)... Ważne jest jak zorganizowana jest architektura, jak procesor jest zbudowany. Wcale nie trzeba iść w ilość rdzeni...

 

A jeśli mowa o procesorach o kilkuset rdzeniach, to czemu miałyby być niemożliwe do skonstruowania? Intel bodajże stworzył 80-rdzeniowy procesor. Bo kto powiedział, że te wszystkie rdzenie mają być tak wielkie jak jeden rdzeń Conroe? Wiele i małe...

I co warto zaznaczyć - w takim wielordzeniowym procesorze przecież każdy z rdzeni nie musi mieć przecież po 2MB cache'u... wspólne L3 o odpowiednio dużej wielkości + osobiste L2 dla każdego rdzenia, o niewielkiej pojemności wystarczy ;) A pewne elementy występują wspólnie dla całego procesora.

 

Współczesne karty graficzne mają po kilkaset procesorów strumieniowych - shaderów (ich ilość będzie rosła w szybkim tempie wraz z kolejnymi seriami kart). I co, nie można? Można. Mimo że GPU produkowane są w 55 - 65nm.

Share this post


Link to post
Share on other sites

dobrze tylko ze czym schlodzisz te tysiac rdzeni ? powietrze raczej odpada a woda to bys musial miec chyba basen do dyspozycji i nie wiem jaka pompe.

Share this post


Link to post
Share on other sites

Powietrzem, jak najbardziej! Oczywiście zakładając, że cały chip byłby odpowiednio mały i miał niewygórowane TDP :)

 

Karty graficzne chłodzone jakoś są... a shadery w tych szybkich pracują już z zawrotną prędkością ponad 1.5Ghz ;)

Share this post


Link to post
Share on other sites

mi się wydaje, że to przede wszystkim, od ilości tranzystorów, a nie ilości rdzeni zależy moc pobierana przez procesor, no i od częstotliwości, bo nie pamiętam już dokładnie, ale tranzystory  w procesorze pobierają energię zdaje się tylko w chwili przełączania stanów, więc czym wyższe taktowanie tym większy pobór. Przy procesorach wielordzeniowych operacje graficzne bardzo prosto można wykonywać na równolegle, więc taktowanie pojedynczego rdzenia może być małe, a biorąc pod uwagę efektywność pracy, jest prawie taka, jakby zsumować częstotliwości wszystkich rdzeni.Co prawda jest w tedy więcej tranzystorów, które potrzebują energii, ale i tak sądzę, że taki układ łatwiej chłodzić, niż jakby pojedynczy rdzeń był taktowany z taką częstotliwością, aby wykonywał pracę układu wielordzeniowego (nie mówiąc o tym, że to jest w sumie nie możliwe).

Share this post


Link to post
Share on other sites

Nie wszystko trzeba przepisywać na "x-rdzeniowce", wiele aplikacji

spokojnie może działać wydajnie na 1 rdzeniu.

Co innego aplikacje które przetwarzają znaczne ilości danych te mogą wymagać przepisania w celu wyraźnego zwiększenia wydajności.

 

Dodatkowo obecne trendy w tworzeniu oprogramowania faworyzują aplikacje wysokopoziomowe działające na wirtualnych maszynach (Java, .NET, ...) i w takim przypadku

sama wirtualna maszyna może przejmować rozdział na wiele rdzeni. Swoją drogą kompilatory kodu maszynowego też to mogą wykonywać. Oczywiście są pewne ograniczenia w automatycznym dopasowaniu do wielordzeniowych procesorach (o których przedmówcy wspominają).

Myślę jednak że nie będzie to poważny przełom dla programistów.

Share this post


Link to post
Share on other sites

w aplikacjach biurowych (pomijając hurtownie danych, bazy danych) myślę, że optymalizacja, pod względem wielowątkowości jest nie potrzebna, a mniej lub bardziej stosuje się wielowątkowość, pozwalając na interakcję użytkownika z programem, w trakcie, gdy wykonywane jest w tle inne polecenie, np. transmisja z bazą danych. Co innego we aplikacjach gdzie mamy do czynienia z np. obrazem, możemy przetwarzać w jednym momencie tyle pikseli, ile tylko mamy rdzeni (przy pewnych założeniach). Co pozwala na np. dodawanie efektów w czasie rzeczywistym do materiału video. Myślę, że również obliczenia naukowe, symulacje mogą być nie jednokrotnie prowadzone po części równolegle. Tak więc, myślę, że programistów, którzy muszą pisać przede wszystkim wydajny kod czekają duże zmiany w podejściu do programowania, nie będzie się już liczyć ilość pętli, ale również ich wzajemna niezależność. Co innego programiści aplikacji biurowych w .net, java, etc, 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By KopalniaWiedzy.pl
      Nowa metoda ataku na procesory Intela wykorzystuje techniki overclockingu. Eksperci ds. bezpieczeństwa odkryli, że możliwe jest przeprowadzenie ataku na procesory i zdobycie wrażliwych danych – jak na przykład kluczy kryptograficznych – poprzez manipulowanie napięciem procesora.
      Nowy atak, nazwany Plundervolt, bierze na celownik Intel Software Guard Extensions (SGS). To zestaw kodów bezpieczeństwa wbudowanych w intelowskie CPU. Celem Intel SGX jest zamknięcie najważniejszych informacji, takich właśnie jak klucze, w fizycznie odseparowanych obszarach pamięci procesora, gdzie są dodatkowo chronione za pomocą szyfrowania. Do obszarów tych, zwanych enklawami, nie mają dostępu żadne procesy spoza enklawy, w tym i takie, działające z większymi uprawnieniami.
      Teraz okazuje się, że manipulując napięciem i częstotliwością pracy procesora można zmieniać poszczególne bity wewnątrz SGX, tworząc w ten sposób dziury, które można wykorzystać.
      Naukowcy z University of Birmingham, imec-DistriNet, Uniwersytetu Katolickiego w Leuven oraz Uniwersytetu Technologicznego w Grazu mówią: byliśmy w stanie naruszyć integralność Intel SGX w procesorach Intel Core kontrolując napięcie procesora podczas przetwarzania instrukcji w enklawie. To oznacza, że nawet technologia szyfrowania/uwierzytelniania SGX nie chroni przed atakiem Plundervolt.
      Intel zaleca aktualizacje BIOS-u do najnowszych wersji.
      Przeprowadzenie ataku nie jest łatwe. Znalezienie odpowiedniej wartości napięcia wymaga eksperymentów i ostrożnego zmniejszania napięcia (np. w krokach co 1 mV), aż do czasu wystąpienia błędu, ale przed spowodowaną manipulacją awarią systemu, stwierdzają odkrywcy dziury. Naukowcom udało się doprowadzić do takich zmian w SGX, że stworzyli dziury umożliwiające zwiększenie uprawnień i kradzież danych.
      Do przeprowadzenia ataku nie trzeba mieć fizycznego dostępu do komputera, jednak by zdalnie zaatakować SGX konieczne jest wcześniejsze zdobycie uprawnień administracyjnych na atakowanym systemie.
      Plundervolt może zostać przeprowadzony na wszystkie procesory Intel Core od czasów Skylake'a, co oznacza, że narażone są Intel Core 6., 7., 8., 9. i 10. generacji oraz układy Xeon E3 v5 i v6, a także Xeony z rodzin E-2100 i E-2200.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Pojawiły się pogłoski, że Intel ma zamiar znacząco obniżyć ceny procesorów 9. generacji. Jak donosi TweakTown, w obliczu zbliżającej się premiery procesorów Cascade Lake-X koncern ma zamiar obciąć ceny układów Skylake-X nawet o 50%. W ten sposób firma chce szybciej opróżnić magazyny i lepiej konkurować z AMD.
      Jeśli rzeczywiście dojdzie do tak znaczącej obniżki, to najprawdopodobniej Intel będzie musiał dopłacić swoim dystrybutorom i innym parterom handlowym. To obniży firmowe zyski, jednak pozwoli lepiej konkurować z AMD.
      Obecnie AMD oferuje lepsze ceny procesorów z przeliczeniu na rdzeń, dlatego też wielu graczy wybiera układy Ryzen 5 3600/X lub Ryzen 7 3700X i cieszy się lepszą wydajnością w grach niż w przypadku układów Core i7-8700K czy Core i9-9900K, które są ponadto droższe.
      Doniesienia o potężnej obniżce opierają się na slajdzie, który prawdopodobnie wyciekł z Intela. Na slajdzie widzimy, że Intel przewiduje iż na obniżki przeznaczy w bieżącymm roku 3 miliardy dolarów. Porównuje się przy tym do AMD, pokazując, że konkurent jest znacznie mniejszą firmą, której cały zysk netto wyniósł w ubiegłym roku 0,3 miliarda USD. Mimo swojej olbrzymiej przewagi finansowej i pozycji na rynku Intel woli najwyraźniej dmuchać na zimne i poważnie traktuje AMD, które od czasu premiery architektury Zen umacnia się na rynku.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Po tym, jak na początku bieżącego roku firma GlobalFoundries przestała produkować układy scalone na zlecenie, na rynku najbardziej zaawansowanych chipów pozostały jedynie trzy firmy. Największą z nich jest tajwańska TSMC, drugi pod względem wielkości jest Samsung, który przeżywa jednak kłopoty. Trzecia firma to Intel, które nie odniosła na tym rynku większych sukcesów i właśnie pojawiły się pogłoski, że może się z niego wycofać.
      Jak donosi serwis DigiTimes, powołując się na źródła w tajwańskim przemyśle półprzewodników, nie będzie zaskoczeniem, jeśli Intel zaprzestanie produkcji układów scalonych na zlecenie. Z informacji przekazanej przez źródła wynika, że Intel nigdy nie stanowił poważnej konkurencji dla TSMC i Samsunga. Firma oferowała wyższe ceny i nie przyciągnęła ani wielkich klientów, ani nie składano w niej dużych zamówień.
      Tajwańscy eksperci działający na rynku półprzewodników mówią, że Intel nigdy tak naprawdę nie przykładał dużej wagi do konkurowania z TSMC i Samsungiem na rynku układów calonych na zlecenie. Być może przedstawiciele koncernu nigdy nie wierzyli w sukces na rynku, który w ponad 50% jest opanowany przez TSMC, a Samsung i Globalfoundries skupiały się na utrzymaniu swojej pozycji. Wyższe ceny oraz słabszy łańcuch dostaw również nie pomagały Intelowi w rynkowej walce.
      Analizy dotyczące rynku półprzewodników przewidują, że w 2019 roku z powodu spadku cen układów pamięci i wojny handlowej pomiędzy USA a Chinami, inwestycje na tym rynku zmniejszą się o 8%. Wcześniej przewidywano 7-procentowy wzrost. Jednak na Tajwanie sytuacja będzie zupełnie inna. Tam inwestycje mają wzrosnąć o 24%, głównie dzięki budowie przez TSMC fabryk wytwarzających kości w technologii 5 nanometrów.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Intel przerzuca się z producentami pecetów odpowiedzialnością za niedobory na rynku procesorów dla pecetów. W liście otwartym do klientów i partnerów Bob Swan, dyrektor ds. finansowych Intela, który tymczasowo sprawuje funkcję dyrektora wykonawczego, stwierdził, że braki na rynku procesorów wynikają z rosnącej popularności chmur obliczeniowych oraz z niespodziewanego wzrostu popytu na pecety. Analitycy spodziewają się, że po raz pierwszy od 2011 roku rynek pecetów doświadczy znaczącego wzrostu.
      Jednak nie wszyscy zgadzają się z Intelem. Jeszcze przed publikacją listu Swana na blogu jednego z brytyjskich producentów pecetów opublikowano wpis, w którym producent ten wini wyłącznie Intela za rynkowe problemy. Dowiadujemy się z niego, że wobec rosnącego zapotrzebowania na chmury obliczeniowe i centra bazodanowe Intel zmienił swoje priorytety i skupił się głównie na produkcji Xeonów, nie dbając o wyczerpujące się zapasy CPU dla pecetów. Wobec rosnącego zapotrzebowania na rynku komputerów osobistych oznacza to nie tylko niedobory, ale także wzrosty cen, które mogą utrzymać się jeszcze w pierwszym kwartale przyszłego roku.
      Niezależnie jednak od problemów z zaspokojeniem popytu, Intel ma się czym pochwalić. Nasz biznes bazodanowy wzrósł w drugim kwartale o 25%, a przychody z rynku chmur obliczeniowych zwiększyły się o 43% w pierwszym półroczu. Postępy na rynku pecetów są jeszcze bardziej zdumiewające, czytamy w liście Swana.
      Dobrą alternatywą dla pecetowych procesorów Intela mogą być kości AMD Ryzen, których ceny pozostają stabilne. Jednak nie wszyscy klienci dadzą się przekonać do zakupu kości AMD, więc producenci komputerów osobistych nie mają innego wyjścia jak poczekać, aż na rynek trafi wystarczająca ilość produktów Intela.

      « powrót do artykułu
    • By KopalniaWiedzy.pl
      Podczas Fifth International Symposium on Networks-on-Chip 2011 specjaliści z MIT-u zdobyli nagrodę za najlepsze opracowanie naukowe symulatora układu scalonego. Ich program Hornet modeluje działanie wielordzeniowego procesora znacznie lepiej niż inne tego typu oprogramowanie. Potrafił znaleźć w oprogramowaniu błędy, których inne symulatory nie zauważyły.
      Teraz Hornet został znakomicie udoskonalony i wyposażony w nowe funkcje. Jego nowa wersja potrafi symulować zużycie energii, komunikację między rdzeniami, interakcję pomiędzy CPU a pamięcią oraz obliczyć czas potrzebny na wykonanie poszczególnych zadań.
      Symulatory są niezwykle ważne dla firm produkujących układy scalone. Zanim przystąpi się do produkcji kości przeprowadzane są liczne testy ich działania na symulatorach.
      Dotychczasowe symulatory przedkładały szybkość pracy nad dokładność. Nowy Hornet pracuje znacznie wolniej niż jego starsze wersje, jednak dzięki temu pozwala na symulowanie 1000-rdzeniowego procesora z dokładnością do pojedynczego cyklu. Hornet jest nam w stanie wyliczyć, że ukończenie konkretnego zadania będzie np. wymagało 1.223.392 cykli - mówi Myong Cho, doktorant z MIT-u.
      Przewaga Horneta nad konkurencją polega też na tym, że inne symulatory dobrze oceniają ogólną wydajność układu, mogą jednak pominąć rzadko występujące błędy. Hornet daje większą szansę, że zostaną one wyłapane.
      Podczas prezentacji Cho, jego promotor profesor Srini Devadas i inni studenci symulowali na Hornecie sytuację, w której wielordzeniowy procesor korzysta z nowej obiecującej techniki przetwarzania danych pacjentów. Hornet zauważył, że niesie ona ze sobą ryzyko wystąpienia zakleszczenia, czyli sytuacji, w której różne rdzenie, aby zakończyć prowadzone obliczenia, czekają nawzajem na dane od siebie. Powoduje to, że zadania nie mogą być zakończone, gdyż rdzenie nawzajem siebie blokują. Żaden inny symulator nie zasygnalizował tego problemu. Hornet pozwolił też na przetestowanie zaproponowanego przez naukowców sposobu na uniknięcie zakleszczenia.
      Zdaniem jego twórców Hornet, ze względu na swoje powolne działanie, posłuży raczej do symulowania pewnych zadań, a nie działania całych aplikacji. Przyda się zatem tam, gdzie zajdzie potrzeba upewnienia się, czy nie występują żadne nieprawidłowości czy też do statystycznego zbadania możliwości wystąpienia błędów.
×
×
  • Create New...