Re: AMD K6-2 RULEZ !!! ...

Autor: Vindex (vindex_at_friko.onet.pl)
Data: Thu 10 Sep 1998 - 20:43:29 MET DST


On Fri, 11 Sep 1998 15:59:23 +0200, "Krzysztof Goworek"
<krzys_at_enpol.gliwice.pl> wrote:

<ciach>

>>To nie sa instrukcje 3D - to SIMD. 3D jest jednym z przykladowych zastosowan
>Dlatego ujalem w cudzym slowie...

OK - obaj wiemy o co chodzi

>>
>>Probowales pisac kiedys AI? Ja nie - wiec wstrzymam sie ze skomentowaniem
>To dlaczego podajesz jako przyklad ?

Jako przyklad tego ze poza wizualizacja jest jeszcze pare innych
rzeczy w grach. Poniewaz nie wiem na ile da sie zastosowac SIMD przy
programowaniu AI to nie pisze o konkretach - niewykluczone jest jednak
ze sie da

>>tego. Poza tym pozostaje rowniez kwestia przygotowania danych do
>>wizualizacji - tu SIMD moze sie jak najbardziej przydac
>Co masz dokladnie na mysli piszac przygotowanie danych ?

Wszelkiego typu transformacje wierzcholkow, przeliczenia bryl itp. Do
tego akurat SIMD nadaje sie bardzo dobrze.

>>>Nie bez kozery instrukcje te nazwano 3D...
>>
>>To akurat okreslenie czysto reklamowe. Co do konkretow - j.w. Dane do
>>wizualizacji nie biora sie znikad - ktos musi to wszystko przeliczyc
>Ale co ? Tak ja pisalem: geometria to tez czesc API i moze byc optymalizowana
>wlasnie tam.

Nie bylbym pewien czy w calosci - zwlaszcza biorac pod uwage to ze np.
w DX'ie ma sie do wyboru albo wygode albo szybkosc. Majac pod reka
ograniczona ilosc operacji i tak musisz cos optymalizowac

>>A moze 80%? Jestes w stanie podac jakas konkretna liczbe? Bo ja nie - tyle
>>ze napewno nie jest to 99% :)
>Zart byl...

U mnie tez - przynajmniej czesciowo :)

>>A wiec jednak zgadzasz sie ze mna ze programy optymalizuje sie pod procesor?
>Siur. Chodzi o to, by nie trzeba bylo tego robic. Program nie powinien opierac sie
>o architekture procesora. I to powinny zapewniac biblioteki i kompilator.

Kompilator nigdy nie zapewni odpowiedniego poziomu optymalizacji -
chyba ze bedzie napisany pod konkretny typ aplikacji. Skoro
optymalizuje sie oprogramowanie pod konkretny procesor to widac warta
skorka wyprawki - efekty nie sa widac tak mizerne jak twierdzisz

>>> A mowa o instrukcjach 3d,
>>
>>A czymze one sa jesli nie czescia funkcji procesora?
>Nie chodzi o to. Jezeli calosc wizualizacji przeniesiemy na API, to nie bedzie co optymalizowac.

Owszem - tylko ze wtedy to API stanie sie nieoptymalne z zalozenia.
Sam wiesz ze im program wiekszy tym trudniej go dostosowac do
nietypowych zastosowan

>No, moze. Dla chcacego nie ma nic trudnego. Chodzi o to, ze jezeli program bedzie tak napisany
>i jednoczesnie API bedzie obslugiwalo (w optymalny sposob) obydwa procesory, to roznica w
>predkosci dzialania programu bedzie zalezala tylko od roznicy w predkosci procesorow.

Zakladajac ze cos takiego da sie osiagnac - w wypadku innej filozofii
dzialania zastosowanej w procesorach moze to byc bardzo trudne. A
takie API nie bedzie w tym momencie optymalne dla zadnego procesora -
bedzie _dosc_ optymalne na obu

>Chodzi o to (sedno calej sprawy), by API bylo _dobrze_ napisane. Direct3D posiada obsluge
>geometrii, ale nikt z tego nie korzysta, bo nie dosc ze zagmatwane, to jeszcze nieoptymalne.

Ano wlasnie - nieoptymalne. Trudno jest dostosowac API do wymagan
wszystkich programistow

>Wiec kazdy pisze swoje kawalki kodu, ktore sa zazwyczaj zoptymalizowane na intela.
>BTW: ciekawe ile % zysku daloby przerobienie quaka na AMD (nie K6-2). Fakt, ze ma ciankiego
>koproca, ale z drugiej strony mozna by nieco to poprawic ukladajac odpowiednio instrukcje...

Troche pewnie by dalo - ale na zadne cuda bym nie liczyl. Sam widzisz
ze optymalizacja kodu a nie API daje wieksze mozliwosci. Nie jest to
moze najwygodniejsze dla programistow ale cos za cos ...

>>J.w. Wizualizacja na czyms sie opiera
>Na czym ?

Na danych przygotowanych przez procesor - od tego przygotowania zalezy
czy program bedzie dzialal szybciej czy wolniej. Nie ma mozliwosci
zoptymalizowania tego procesu tak aby na wszystkich procesorach byl
optymalny. Cos za cos

>>
>>Jest - tyle ze i tak dziala z przerobiona wersja Quake'a. Jak myslisz -
>>czemu?
>Nie wiem. Pewnie tak go napisali...

To nie jest kwestia napisania - skoro tak jest to znaczy ze lepsze
efekty uzyskali poprzez optymalizacje kodu niz przez optymalizacje
API/sterownikow.

Pozdrowienia

Vindex



To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 17:36:02 MET DST