eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingHyper Threading › Re: Hyper Threading
  • Path: news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.internet
    ia.pl!pingwin.aster.pl!newsread2.aster.pl!not-for-mail
    From: Bernard <b...@e...net>
    Newsgroups: pl.comp.programming
    Subject: Re: Hyper Threading
    Date: Fri, 18 Sep 2009 08:36:31 +0200
    Organization: Aster Sp. z o.o.
    Lines: 47
    Message-ID: <h8v9pv$5kv$1@newsread2.aster.pl>
    References: <7...@v...googlegroups.com>
    NNTP-Posting-Host: 187-mo6-2.acn.waw.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Trace: newsread2.aster.pl 1253255807 5791 82.210.165.187 (18 Sep 2009 06:36:47 GMT)
    X-Complaints-To: a...@a...pl
    NNTP-Posting-Date: Fri, 18 Sep 2009 06:36:47 +0000 (UTC)
    User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
    In-Reply-To: <7...@v...googlegroups.com>
    X-Antivirus: avast! (VPS 090917-0, 2009-09-17), Outbound message
    X-Antivirus-Status: Clean
    Xref: news-archive.icm.edu.pl pl.comp.programming:183511
    [ ukryj nagłówki ]

    mgk wrote:
    > Mam algorytm ktory nie skaluje sie liniowo. Przyrost wydajnosci to
    > pierwiastek z liczby procesorow. Czyli na 4 rdzeniach jest 2 razy. Na
    > 2 jest jakies 1.4 raza.
    > Algorytm ten nie korzysta z operacji zmiennoprzecinkowych.
    >
    > Mam obawy co do HT.
    > Z tego co wiem o HyperThreading to dziala to tak ze na 1 rdzeniu
    > procesor wykonuje 2 watki. Ale tylko wtedy gdy jeden watek
    > wykorzystuje operacje zmiennoprzecinkowe a drugi staloprzecinkowe.
    > Jesli sie myle to prosze o skorygowanie. Tak gdzies czytalem. Nie
    > dotarlem nigdzie jak to jest do konca.

    Mylisz się. Po prostu procesor wykonuje na przemian instrukcje obu
    wątków. Robi to dość elatycznie - kiedy jeden strumień instrukcji
    dostaje czkawki, wykonuje się ten drugi.

    > Ale jesli tak jest to oznacza ze nie ma sensu tworzyc 2 watkow na 1
    > rdzen HT.
    >
    > Czyli jesli moja aplikacja dzieli zadanie na tyle watkow ile mam
    > procesorow, a system mi zglasza bledna ich liczbe poniewaz na 4ro
    > rdzeniowym procesorze HT system mi zglosi 8 procesorow moja aplikacja
    > moze dzialac wolniej niz jakby bylo 4 zwykle rdzenie bez HT.

    Jedne aplikacje dziają lepiej z SMT, inne bez. Multimedia i masowe
    obliczenia mogą być sprawniejsze bez HT.

    > Przykladowo na 2 rdzeniowym CPU moja aplikacja przyspiesza 1.4 raza
    > wzgledem 1 rdzeniowego. Gdy procesor jest 1 rdzeniowy z HT i jesli HT
    > dziala tak jak napisalem to aplikacja przyspiesza 1.4/2 raza... czyli
    > 0.7 czyli spowolni...
    >
    > Czy moje obawy sa sluszne?

    Może są, może nie. Wszystko zależy od zależności międzyinstrukcyjnych i
    od sposobu korzystania z kieszeni.

    > Chociaz nie wiem czy na HT gdy jeden watek wykonuje np kopiowanie
    > zmiennej z pamieci do rejestru, albo wrzucenie na stos, a drugi watek
    > wykonuje dodawanie na ALU to czy nie wykonaja sie te operacje
    > rownolegle?

    Dowolne operacje przy HT wykonują się quasi-równolegle. Z grubsza
    intuicyjnie można to opisać tak, że procesor w kolejnych cyklach
    wykonuje na przemian instrukcje dwóch wątków, i są to zupełnie dowolne
    instrukcje.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: