Aktív témák

  • Rover623

    félisten

    válasz wnix #72 üzenetére

    Az alábbi módon (nem multitask környezetben) 0.01MHz pontossággal tudom mérni az órajelet, Pentium procitól felfelé (az AMD-k 99%-án is).
    Ahol nem műx, kicsit bonyolultabb a dolog, de az is megy, csak a pontosság romlik, 1MHz-re...

    Const
    UserTimer = $08;

    TickTime = 54925.493;

    Value = $A5;
    Start = Value-1;
    InUse = Value-2;
    Stop = Value-3;

    SebJelzo : Byte = Stop;

    Var
    SavedTimerInt : Pointer;

    TSC1,
    TSC2 : LongInt;

    Const
    PUSHALLD = $6066;
    POPALLD = $6166;


    Procedure ReadTimerStamp; Near; Assembler;
    { EAX-ben visszadja a Timer Stamp ‚rt‚k‚t }
    Const
    RDMSR = $320F;
    Asm
    DB 66H
    XOr CX, CX
    MOV CL, 10H
    DB 66H
    XOr AX, AX
    DW RDMSR
    End; { ReadTimerStamp }

    Procedure PentiumTimer; Far; Assembler;
    Asm
    PUSH ES
    PUSH DS
    DW PUSHALLD

    MOV AX, Seg @DATA
    MOV DS, AX

    PUSH DS

    PUSHF
    Call DWord Ptr SavedTimerInt

    POP DS

    MOV AL, SebJelzo
    CMP AL, InUse
    JNE @1

    {ha éppen most folyik a mérés, akkor lekérdezzük a számlálót}
    Call READTIMERSTAMP

    DB 66H
    MOV Word Ptr TSC2, AX

    { leállítjuk a mérést ! }

    MOV AL, Stop
    JMP @2

    @1:
    CMP AL, Start
    JNE @3

    { ha most kell inditani, akkor lekérdezzük a szamlalot}
    Call READTIMERSTAMP

    DB 66H
    MOV Word Ptr TSC1, AX

    { jelezzuk, hogy elindult egy meresi ciklus }
    MOV AL, InUse

    @2:
    MOV SebJelzo, AL

    @3:
    DW POPALLD
    POP DS
    POP ES
    IRET
    End; {PentiumTimer}


    Function PentiumSpeed: Real; Far;
    Begin
    SetIntVec (UserTimer, @PentiumTimer);

    Asm
    MOV SebJelzo, Start

    @1:
    CMP SebJelzo, InUse
    JNE @1

    @3:
    CMP SebJelzo, Stop
    JNE @3
    End;

    SetIntVec (UserTimer, SavedTimerInt);
    Dec (TSC2, TSC1);

    PentiumSpeed := Abs (TSC2) / TickTime;

    End; {PentiumSpeed}

  • stevve

    veterán

    válasz wnix #74 üzenetére

    Egy etlen szóval sem említettem az assemblert.:(
    Csupán a hozzáállásról írtam.

    Azért ez tényleg fura lenne.:DDD főleg az ablakozás...

  • wnix

    senior tag

    válasz stevve #73 üzenetére

    Azért kiváncsi lennék, milyenek lennének a mai gépeink, ha pl Windows javarészt assemblerben lett volna megírva. ;]

    [Szerkesztve]

  • stevve

    veterán

    Ez igaz, ezért jönek sorra mindenhez a patch-ek, service pack-ek, mert nem a minőség számít, hanem az idő. Döntéselhalasztás... majd foglalkozunk egy problémával akkor, ha előjön...

  • wnix

    senior tag

    A programnyelv vitát egy ilyen témánál nem egészen értem. Én pár évvel ezelőtt assemblerrel kezdtem (6502,68000), aztán kezdtem el a BASIC-et (GFA, GW, Turbó) később a C,C++-t és most próbálgatom a Pascal/delphi-t. De egy ilyen témánál (sebességmérés) meg sem kísérelném a ''magas-szintű'' nyelvekkel való próbálkozást, mert itt még a hardware-hiányosságok (pl timer-chip ~1.8MHz) miatt még assemblerben sem nagyon lehet pontos eredményeket kapni. Ha meg akármilyen ''magas-szintű'' nyelvvel próbálnám - ahol még a hardware-közeli parancsok futásidejét sem tudom - még nagyobbak lesznek a pontatlanságok.

    Sok programot még ma is úgy írok, hogy megirom pl C-ben a funkciókat, és ha ezek stabilan/hiba nélkül futnak, akkor átírom őket assemblerre. Így szvsz a lehető leggyorsabb lesz a jövendőbeli programom. Szvsz az újabb/mai programok legfőbb hibája az, hogy a mai programozók nagyon egyszerűen szeretnének programot írni, így a sebességnek/hibák kiküszöbölésének csak nagyon kevés ídőt szánnak.

  • stevve

    veterán

    válasz Rover623 #69 üzenetére

    Sajnos ezért van az, hogy a linuxosok eleve elítélnek minden windows felhasználót és azonnal sértve érzik magukat, ha valaki mond valamit...
    a winesek ritkábban szidják a linuxot, mint fordítva.
    az elvakult linuxosok szűklátókörűek, mint az ortodox egy házak és a külvilágot észre sem veszik, nem is látják, de elítélik -> Tildynek adok igazat (azért is, mert mindenki őt szidja, pedig csak annyit mondott, hogy a pascal nem elterjedt).

    én is tanultam pascalt, de rögtön elfelejtettem, amint a c++ képbe került.Most azt sem használom, mert VS.NET -et tanulok és az tetszik. Ez bűn?

  • VladimirR

    nagyúr

    válasz tildy #68 üzenetére

    imho ebben benne van az is, hogy eleg sokan vannak vele ugy, mint Te, hogy ''a pascal arra nem valo''

  • Rover623

    félisten

    válasz tildy #66 üzenetére

    Hoyuka már válaszolt neked...
    Everest szintű progi pedig azért nincsen Linux alá, mert nincs rá szükség...minden Linux használó=guru...együtt lélegeznek a gépükkel, töviről hegyire ismerik a masina összes alkatrészét, minden jellemzőjével együtt...;]

  • tildy

    nagyúr

    válasz hoyuka #67 üzenetére

    Igazad van, de nem igazán elterjedt. Nem láttam még pl. X alá ablakos, menüs pascal progit. Persze ez nem jelenti azt , hogy nincs...

  • hoyuka

    csendes tag

    válasz tildy #66 üzenetére

    Linuxra van free pascal meg GNU pascal. Mobilra is lehet elvileg pascal-ban programot fejleszteni, gyakorlatilag nem tudom.

  • tildy

    nagyúr

    válasz Rover623 #21 üzenetére

    Egyébként bár már úgy voltam vele, nem írok ide, mégis megteszem:
    Próbálj meg linux alatt pacalban meg delphiben programozni;)
    Vagy az újabb mobiltelefonokon.

    Szóval jó a pascal, csak nem mindenre.Ahogy a java is jó de nem mindre.És ahogyan a C is. A kylix sem egy nagyon befutott dolog még tudomásom szerint

    Tényleg linux alá van everest szintű progi?

  • hoyuka

    csendes tag

    válasz stevve #63 üzenetére

    Hali!

    Egy alap CPU felismeres nem problema, van egy CPUID assembly utasitas, visszaad par parametert 4 regiszterben, ezeket kell tudni ertelmezni, ez szinte copy-paste a Linux kernelbol.


    (Valaki mondta, hogy ez kezo mentalitas. Ez szerintem hulyeseg. Szamomra nem kihivas megkeresni es atnezni a pdf-eket, azt a nehany sor assembly betetet megirni, majd pedig switch-case es if-ekkel eldonteni, hogy mi van. 15 evvel ezelott en is ''elelveztem'' az ilyenektol, de most szimpla idopocsekolasnak tunik.


    ''Nos, ha valakinek annyira kell a felismertetés, fejtsen vissza egy ilyen progit assembly-be és talán megtalálja (egyszer majd )''

    A gond az, hogy ha jol ertem egy csomo dolog chipset fuggo. Ha meg is csinalnam ezt, akkor is jonnenek ki az uj chipset-ek, mindegyiknel mas identifikacios eljarast kellene hasznalni, a kodot folyamatosan frissen tartani. Na ez az ami nekem nem elet celom es nem is tudnek belole jelentos profitot kihozni.

    ''De minek ez? Van egy rakás progi, ami megmondja kódolás nélkül is...''

    Ja van. Pl. a az Internet Explorrelben is van Ok gomb, de ez nem azt jelenti, hogy soha senkinek nem lesz szuksege az Ok gombra egy masik szoftverben.
    Amit ''fejlesztek'' annak lenyeges resze lenne a CPU identifikacio, de nem a fo feature.

    udv.

  • OddMan

    őstag

    A cpuid utasításról keress a neten doksikat, ez az utasítás sokat segít a cpu detektálásában.

    Bővebben: link


    [Szerkesztve]

  • stevve

    veterán

    Csak olvasgattam itt, akartam tanulni a processzorok felismerhetőségéről szoftveresen....de tévedtem, mert ez az ''Alázzunk ma is a fórumon'' műsor.
    Szép kis vitát kavartatok itt, de értelme nem volt asszem.

    Nos, ha valakinek annyira kell a felismertetés, fejtsen vissza egy ilyen progit assembly-be és talán megtalálja (egyszer majd ):DDD

    De minek ez? Van egy rakás progi, ami megmondja kódolás nélkül is...;]

  • Gamespy™

    tag

    válasz hoyuka #55 üzenetére

    sorry átsiklottam afölött hogy linuxra kell!
    én csak a windows-hoz konyitok ugyhogy átadom a terepet...

  • wnix

    senior tag

    válasz hoyuka #60 üzenetére

    ''FSB es szorzo teren a beallitott ertek erdekelne''

    Sajnos ezt a legnehezebb (szvsz) megcsinálni.
    Ehhez kellenek a gyártó által kiadott chipset dokumentációk pl AMD chipset: Bővebben: link

    Sajnos a legtöbb gyártó, csak akkor adja ki ezeket, ha regisztrált ''developer'' vagy náluk, és sokszor még így is pénzt kérnek érte. (AMD az egyik nagy kivétel, sőt a dokumentációs CD-jüket ingyen küldik(küldték) Angliából) Én is már több éve keresek doksit a VIA KT sorozathoz, de nemigen találok :O

    A másik megoldás a BIOS visszafejtése, de az sem túl könnyű, pl van egy régi XT-bios-om ami csak 16kB-os (nem tömörített), de ennek a source-ja közel 1MB méretű asm. (~50000 sor). Egy ilyen kódból ki lehet olvasni, hogy FSB állításakor melyik port-on mit/hogyan kell írni/olvasni. (nem lehetettlen)

  • hoyuka

    csendes tag

    válasz wnix #52 üzenetére

    ''A chipset programozás meg korántsem szabványosított. (gyártófüggő/chip függő)''

    Hat ez nem jo hir.....

    Igazandibol en semmilyen frekvenciat nem szeretnek kimerni, csak kiolvasni vhonnan. FSB es szorzo teren a beallitott ertek erdekelne, nem az alapertelmezett.

    udv.

  • Rover623

    félisten

    válasz tildy #57 üzenetére

    Tildy!
    Én kicsit törni magyar...de mintha a #42-ben feltételes módban lenne az a 15 év...:)

  • VladimirR

    nagyúr

    válasz tildy #49 üzenetére

    arrol szo nem esett hoyuka hozzaszolasaban, hogy mar letezot alkotnal (O ezt leginkabb ugy emlitette, hogy ha mar van, inkabb megkeresne a forrast -- na ez alapjan irhatja _magarol_ hogy nem alkothat, de konyorgom ne irja mindenkirol)

    igen, senki nem a kisujjabol szopta, mindenkinek tanitottak _valamennyit_ -- de azert 5-10-15 ev tapasztalat egy lehelletnyit hozzaad ehhez a tanitashoz pl aki szopott mar a lebegopotos szamabrazolas hianyossagaval a 0 abrazolasaban, s nem doksikbol ollozgatta ki a megoldast, hanem rajott maga, hogy mi a gubanc, s megoldast keresett, majd csinalt ra onalloan, az annak ellenere, hogy nem talalta ferl az elektomossagot, epitett integralt aramkort, tervezett neumann elvu szgepet, epitett pc-t, minden alkatreszevel egyutt, irt ra a semmibol oprendszert, programnyelve(ke)t, s azokhoz fejlesztoi kornyetzetet, azert mondhassa mar el, hogy onalloan megoldott egy problemat, alkotott valamit

    azt meg tudhatnad mar, hogy valymi kevesse erdekel mind a sajat, mind mas ember ranjga

    lenezo szovegre lenezo valasz? hol is voltam lenezo? offenziv voltam, de ha megnezed kozel sem az ujoncsag miatt (akkor nem ilyen #2 szuletett volna)

    ja es a teglakra visszaterve: leraknak eleg teglat, maltert, meg szerszamot, es megmutatjak hogyan kell ket teglat egymasra rakni, illetve hogyan kell pl sarkot rakni -- ennyi, a tobbi a tapasztalattal es gyakorlattal jon -- vagy osszelopkodod a falakat, vagy _epitesz_ egy hazat

    #57: wtf?

    [Szerkesztve]

  • tildy

    nagyúr

    válasz VladimirR #39 üzenetére

    VladimirR: mint a példa mutatta : szintén 15 év programozói háttér van mögötte. Erről ennyit...
    lásd:#42.

    [Szerkesztve]

  • Rover623

    félisten

    válasz hoyuka #55 üzenetére

    Utolsó közeli hozzászólásom...

    Azért nem találsz, mert az elképzeléseddel ellentétben nem egyszerű ''összerakósdi'' meg ''táblázat'' dolgokról van itt szó, hanem sok emberévnyi adatgyűjtési és programozói munka áll a háttérben...senki nem ad oda ''puszira'' ennyi befektetett munkát...hülye az, aki nem próbál ebből profitot termelni...akár anyagit, akár erkölcsit...
    Pl. én ilyen hülye vagyok, mert azon kívül hogy itt ''fényezem'' magam (igaz, majdnem anonym módon, tehát igazából szart sem ér...), közvetlen hasznom nincs a dologból, mivel 10 éve visszavonultam a nyilvánosságtól...átadtam a helyemet a fiatalabbaknak, gátlástalanabbaknak...:))
    Közvetve viszont rengetegen profitálnak a munkámból, a felhalmozott információimból: a kollégáim, az ügyfeleink, sőt...még a PH!-sok közül is jópáran...:)

  • hoyuka

    csendes tag

    válasz Gamespy™ #48 üzenetére

    Hali!

    Nem nagyon tudtam elinditani a progit, mert Linux-om van. Megneztem a honlapot, de semmi infot nem talatam arrol, hogy sajat szoftverembol hogy tudom ezeketet az ertekeket megtudni. A progi forrasat sem talaltam sehol. Almomban sem gondoltam, hogy abban a korban, amikor az egyik legjobb C++ fordito OpenSource, nem lehet talalni egy jo OpenSource CPU identification progit....

    udv.

  • wnix

    senior tag

    válasz gLes #50 üzenetére

    Hát igen, én is ilyen megvadult assembler programozó voltam (már nem annyira, talán mert öregszem), aki particiónáló programot készített egy cégnek egy pár ''különleges extrával'' :) (részei még megvannak nekem is, C és asm egyveleg, csak IBM vinyókhoz jó)

  • tildy

    nagyúr

    válasz VladimirR #51 üzenetére

    Mert te még sosem tettél fel rosszul megfogalmazva kérdést vagy akármi.

    Több példa is van a topicban arról, hogy ugyanazt a mondatot hogy lehet x féleképpen értelmezni.
    Mindegy.

  • wnix

    senior tag

    válasz hoyuka #45 üzenetére

    Linux + Windows 2000 or higher''
    Komplikált. Multitasking. Sebességmérések csak nehezen oldható meg, ha egyeltalán lehetséges (megfelelő pontossággal, lásd #43)

    FSB frekvenciát szvsz csak a chipset programozásával lehet lekérdezni, vagy találgatni a CPUID adatai alapján pl: AMD XP 2000+ palo alapbeállítás 12.5*133 (ilyen az enyém), ha 10*166-at állítok a biosban, akkor is AMD XP 2000+-ot ad a CPUID. szóval a CPUID itt megbizhatattlan. A chipset programozás meg korántsem szabványosított. (gyártófüggő/chip függő)

    RAM frekvencia: ezt is chipset-ből lehet kiolvasni, vagy mérésekkel levadászni, de ez is sokmindentől függ pl: CPU órajel, FSB órajel, L1/L2/L3 stb cache sebesség, sőt a ram típusától is pl: SD, DDR, stb. Ha ismered a chipsetet akkor egyszerűbb, de a chipset-gyártók egyre ritkábban adják ki a documentációt a chipekhez.(sajnos)

    Cache információk, L1/L2 frekvencia: a CPUID segítségével a méretet meg lehet határozni, a sebesség itt is nagyon komplikált. Egy lehetőség:

    leteszteled a CPU-sebességet egy paranccsal aminek ismered a futásidejét cache tiltással,
    leteszteled a CPU-sebességet ugyanúgy, de bekapcsolt cache-sel,
    ezután lehet következtetni a cache-frekvenciára is (nem tudom, mennyire pontos, még nem próbáltam így)

    Én az Intel, és AMD oldalon vadászok ilyesmikre pl AMD: Bővebben: link
    de Intelnek is van egy pdf-doksija amiben ugyanezzel foglalkozik, csak most nem találom a linkjét.

  • VladimirR

    nagyúr

    válasz tildy #40 üzenetére

    nem gondolnam, hogy nem tudja mi az a k7 (family), ha nem O kerdezte volna (#1)
    ja, es az a 3 szam keves hozza, kell meg a vendorID is, maskulonben megeshet, hogy egy amd procit mondanek neked :P

  • gLes

    őstag

    válasz wnix #46 üzenetére

    És? A megvadult assembler programozók megírják a saját progijukat és nem másét fogják használni ;]

  • tildy

    nagyúr

    válasz VladimirR #47 üzenetére

    Nemcsak a teglat rakjak eled, hanem azt is , hogy hogy lehet valamifele modon hazat epiteni. Az te hogy esetleg te ebből olyan házat építel, amilyet más senki, vagy olyan házat épitel amit már más is megcsinált de te nem tudsz róla...
    A lenyegen nem valtoztat, hozott anyagbol dolgozol. Max magadból rax hozzá valamit ...

    (Senki sem a kisujjabol szopta ki a programozast, hanem valaki mutatott neki valamiféle irányvonalat). Mindegy ez már nem az én asztalom, de te és Rover623 vittétek nem megfelelő irányba a topikot.

    Egyébként meg szvsz tipikus esete annak ez a topik, hogy ha valaki újonc státuszt visel a neve alatt, milyen lenézésnek van kitéve, gratulálok:(((

    Még valami:a mindenkiben sincs igazad. Lenéző szövegre lenéző szöveg a válasz.

    [Szerkesztve]

  • VladimirR

    nagyúr

    válasz hoyuka #42 üzenetére

    kerlek ne vidd el megjobban parodia fele a topicot, s kerle ne ragadj ki felmondatokat

    ''Harmadresz semmi sincs ezen a vilagon, amit te vagy en onerobol oldottunk volna meg. Egy kesz rendszerbe szulettunk bele es ennek a rendszernek az elemeibol epitkezunk....'' -- erre irtam, s a valaszod messze nem kielegito
    nem mondtam egy szoval sem, hogy ''ercelkedtel'' volna azzal, mekkora programozo is vagy, ellenben szo nelkul lehuztal mindenkit, mondvan mi csak beleszulettunk valami kesz rendszerbe, abbol ollozgatunk
    az, hogy eledraknak egy halom teglat, meg boven keves ahhoz, hogy hazat tudj epiteni -- ugyanigy egy rendszer, akar egy asm nyelv, akar egy .net keretrendszer messze keves ahhoz, hogy egy akarmilyen programot meg lehessen irni -- ahhoz nem keves tanulas, tapasztalat, gyakorlat es az ezekbol fakado sajat tudas kell

    ha ezek tan tovabbra is tartod, hogy senki semmit nem tud es nem is fog tudni onerobol megvalositani, akkor megyek fogok 3 meter kotelet es keresek egy szimpatikus fat -- vagy elmegyek trogerolni, mert ott lgalabb nem kell alkotni

  • wnix

    senior tag

    válasz gLes #44 üzenetére

    pl megvadult assembler programozók, akik PIO-módban szeretnének sebesség rekordot elérni :DD (az enyém PIO4-ben 23MB/s egy Cyrix PR120-as CPU-val, AMD750-es chipset-tel és IBM DTLA 10GB-os vinyóval :) )

  • hoyuka

    csendes tag

    válasz wnix #38 üzenetére

    ''Előre egy kérdés: Melyik OP rendszerhez ?''

    Linux + Windows 2000 or higher

    Csak olyan CPU-k erdekelenk, amikben van CPUID utasitas. Egyebkent az architekturat sem mondtam: x86

    ''FSB frekvencia: Chipset kiolvasással (Szorzó és FSB)''

    Erre van-e egy egyezmenyes szabvany? Vagy chipset es CPU fuggo?

    ''RAM frekvencia: chipset kiolvasással''
    Ez pl. chipset fuggo (a kiolvasas modja)?

    ''Cache információk: CPUID és/vagy chipset kiolvasással''
    Ok, errol van egy kis kod a Linux kernelben, de az csak egy cache meretet dob ki siman.

    ''L1/L2 frekvencia: szvsz csak sebesség-teszteléssel''
    Az L1-rol ugy tudom, hogy proci frekvencian megy, tehat ha megvan az FSB es szorzo, akkor nem problema.

    ASM-es benchmark trukkok szerintem pontos orajel meresere nem nagyon jok, mert normalis OPrendszer alatt nem lehet a megszakitasokat letiltani.
    Na mind1, latom, ha ilyet akarok csinalni nagyon sok infot kell osszeszednem, vagy talalnom kell vmi OpenSource library-t....

    udv.

  • gLes

    őstag

    válasz wnix #43 üzenetére

    Jajj ne szőrözz má, kihasznál manapság még PIO módot? :DDD

  • wnix

    senior tag

    válasz gLes #41 üzenetére

    A megszakításokat azért a mérés előtt letiltanám/lekezelném. Ha pl a vinyó PIO4-módban olvas, miközben fut a mérés, az 16MHz különbség is lehet ;] egy pentium 1-es 60MHz (44MHz ;] ) procinál ez már túl nagy eltérés szvsz. :)

  • hoyuka

    csendes tag

    válasz VladimirR #39 üzenetére

    Hi!

    ''irtal Te mar komolyabb programot? olyat, amire azt mered mondani, hogy a Tied (s nem innen-onnan osszelopott?)''

    Hat erre mit mondjak. Altalaban ha progit irok, akkor nem szoktam ollozni. Mostanaban mar igen. De szerintem senki nem mondhatja azt, hogy valami amit csinalt az teljes egeszeben az ove. Mert ugye neki is megtanitottak a programnyelvet, nem o irta az oprendszert, felhasznalt mas library-kat, ot is megszulte az anyja stb.... Szal itt mi szintetizalunk. Teremthetunk, de nem a semmibol, hanem vmibol ami mar megvolt, de az is szintetizalassal jott letre. Na de ez mar ilyen filozofiai kerdes.

    Amugy ebben a forumban szerintem nem ercelkedtem azzal, hogy mekkora nagy programozo vagyok es nem is szeretnek ezt Rover623 csinalja. O volt az, hogy kapasbol lepalantaz, mert fogalmam sincs rola, hogy hogy mukodnek ezek a CPU identifikacios dolgok.

    Most ha ide beirnam, hogy en is legalabb 15eve programozgatok vagy akarmi, o ugyis arcoskodna, lamazna stb. ugyhogy nincs ertelme.

    udv.

    [Szerkesztve]

  • gLes

    őstag

    CPU sebesség könnyen és gyorsan, pacalból :U

    function GetCpuSpeed: Comp;
    {Visszaadja a CPU sebességét MHz-ben :U}
    var
    t: DWORD;
    mhi, mlo, nhi, nlo: DWORD;
    t0, t1, chi, clo, shr32: Comp;
    begin
    shr32 := 65536;
    shr32 := shr32 * 65536;
    t := GetTickCount;
    while t = GetTickCount do;
    asm
    DB 0FH
    DB 031H
    mov mhi,edx
    mov mlo,eax
    end;
    while GetTickCount < (t + 1000) do;
    asm
    DB 0FH
    DB 031H
    mov nhi,edx
    mov nlo,eax
    end;
    chi := mhi;
    if mhi < 0 then chi := chi + shr32;
    clo := mlo;
    if mlo < 0 then clo := clo + shr32;
    t0 := chi * shr32 + clo;
    chi := nhi;
    if nhi < 0 then chi := chi + shr32;
    clo := nlo;
    if nlo < 0 then clo := clo + shr32;
    t1 := chi * shr32 + clo;
    Result := (t1 - t0) / 1E6;
    end;

  • tildy

    nagyúr

    válasz VladimirR #37 üzenetére

    Ugye nem mondod, hogy olyan hülyének nézed, hogy ne tudná, hogy pl. a k7 mi.

    Ahogy én a szavaiből kivettem:
    tildy@vimana:~$ cat /proc/cpuinfo
    processor : 0
    vendor_id : GenuineIntel
    cpu family : 15
    model : 2
    model name : Mobile Intel(R) Celeron(R) CPU 2.40GHz
    stepping : 9
    cpu MHz : 2398.003
    cache size : 256 KB
    fdiv_bug : no
    hlt_bug : no
    f00f_bug : no
    coma_bug : no
    fpu : yes
    fpu_exception : yes
    cpuid level : 2
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid
    bogomips : 4784.12

    Ez pedig nem más mint szimpla lexikális tudás... Mint ahogy alant írtad is, hogy..
    Szóval ezekből a számokból mond már meg ez milyen proci.

    Ja meg valami: a pascalt ugye kigyós barátunk találta ki?
    Az nem épitőkő??
    vagy jó pár fügyvényt...Ejejj gondolkozzatok már.

    [Szerkesztve]

  • VladimirR

    nagyúr

    válasz hoyuka #36 üzenetére

    jol ertem, hogy szerinted nem lehet (s abbol itelve, hogy a 15 eves programozoi multat is igy lehuzod soha nem is lehetett) smmi ujat teremteni ezen a teren?
    csak a mar meglevo dolgokbol ollozgathatunk ossze ujabbakat?
    irtal Te mar komolyabb programot? olyat, amire azt mered mondani, hogy a Tied (s nem innen-onnan osszelopott?)

  • wnix

    senior tag

    válasz hoyuka #1 üzenetére

    Előre egy kérdés: Melyik OP rendszerhez ?

    Aztán pár válasz:
    ''Szeretnem progibol detektalni a kovetkezoket: CPU tipus (lehetoleg minnel reszletesebben), FSB frekvencia, szorzo, cache informaciok.''
    CPU típus: 486-tól felfelé CPUID paranccsal, régebbieket FLAG-regiszter analizálásával
    FSB frekvencia: Chipset kiolvasással (Szorzó és FSB)
    Cache információk: CPUID és/vagy chipset kiolvasással

    ''A RAM az FSB frekvenciajan megy?
    Az L1 cache ugye a CPU frekvenciajan uzemel (tehat FSB*szorzo)?
    Az L2 cache milyen frekvencian uzemel?''

    RAM frekvencia: chipset kiolvasással
    L1/L2 frekvencia: szvsz csak sebesség-teszteléssel

    cpu_family, model es stepping
    cpu_family: pl 386, 486, pentium, pentium pro, vagy amd-k5,amd-k7, stb
    model: pl amd athlon, amd duron, stb
    stepping: pl amd athlon xp palomino, amd athlon xp barton, stb

    A CPU pontos típusát, ha van CPUID parancsa, akkor meg lehet határozni, de csak a sebességtől független határokig, ebből a szorzót és FSB-t még nem tudod megállapítani.
    pl: AMD XP Athlon Palomino 1900+, L1 Instr: 64kb, L1 data: 64kb, L2: 256kb
    Ha nincs CPUID parancsa a procinak, akkor sebesség tesztekkel néhány dolgot le lehet ''vadászni'', de ehhez szvsz elég mély assembler tudás is kell. (ha van, beszélhetünk tovább :) )

    Az FSB-t és a szorzót szvsz csak a chipset programozásával lehet lekérdezni pontosan. (talán lehet sebesség tesztekkel következtetni, de ilyen mélyrehatóan még nem foglalkoztam ezzel, mert nem látom az értelmét :) )

  • VladimirR

    nagyúr

    válasz tildy #33 üzenetére

    A RAM az FSB frekvenciajan megy?
    Az L1 cache ugye a CPU frekvenciajan uzemel (tehat FSB*szorzo)?
    Az L2 cache milyen frekvencian uzemel?
    A cpu_family, model es stepping parameterek mi a rakot jelentenek?
    Lehetseges-e ebbol az informaciobal a CPU pontos tipusat meghatarozni?
    A cache size az L1 vagy az L2 vagy mindketto osszege?
    Hogy lehetne megtudni, hogy mennyi L1 es L2 van benne es mekkora frekvencian megy az L2?
    Az FSB frekvenciajat es a szorzot honnan lehetne megallapitani?

    ezeket az elso hozzaszolasbol ideztem, itt ott kiemelesekkel -- na akkor ez most 2, 3, vagy 11 parameter (arrol nem is beszelve, hogy valoszinuleg ezek processzorcsaladonkent, de legalabb gyartonkent elternek)?

    az alahuzott resszel pedig arra kivantam utalni, hogy hogy bar eddigi tobb mint 10 eves programozasi multamban (hencegjek mar en is kicsit) egy percig nem foglalkoztam cpu, vagy barmily mas hardver detectalasaval - mitobb, legmelyebbre akkor mentem, mikor pascal-ban asm-mel keltettem eletre az egermutatot (3-4 sor), szoval ezek jelentesevel meg igy is tisztaban lehet lenni, ha az ember mar olvasott imitt-amott a processzorokrol

  • hoyuka

    csendes tag

    válasz Rover623 #27 üzenetére

    ''Nem kérkedéssel kezdtem...az első hsz-emben jeleztem a srácnak: ha ilyen minimális szintről indít (2005-ben), szinte esélye nincsen hogy önerőből megoldja a problémát...tehettem ezt azért, mert ''belülről'' látom a dolgot...''

    :) Nagyon nagy guru lehetsz.... Nem hiszem, hogy ez amit szeretnek csinalni ez egy olyan nagyon nagy kreativ valami lehet, amire buszke lehet az ember. Ez szerintem ilyen ''programozoi nigger munka''. Ossze kell rengeteg infot gyujteni es le kell kodolni.

    Mastresz nem is onerobol akartam megoldani :) LOL

    Harmadresz semmi sincs ezen a vilagon, amit te vagy en onerobol oldottunk volna meg. Egy kesz rendszerbe szulettunk bele es ennek a rendszernek az elemeibol epitkezunk....

    Ha meg veletlenul nem vagyok biztos benne, hogy az L2 nem a CPU orajelen megy, ekkor valaki megmondja: igen az L2 az kisebb orajelen megy, mint a CPU. LOL. Ez az a nagy tudas amire ilyen buszke vagy? Kibaszott nagy kreativitas van mogotte. Buszke lehetsz magadra. Ha mar 15 evnyi ilyen informacioval rendelkezel, hogy ennel a CPU-nal ebbol a regiszterbol ezt az erteket igy kell ertelmezni, akkor aztan te vagy az Isten, mi hu alatvaloid meghajlunk elotted. LOL

    A vilagon vegtelen sok rendszer van es vegtelen sok rendszert lehet teremteni. Te itt ismered az osszes rendszert? Nyugodtan lefikazhatod azt, aki eppent azt a rendszert nem ismeri, amit te ismersz?

    udv.


    [Szerkesztve]

  • tildy

    nagyúr

    válasz Rover623 #34 üzenetére

    Te nem értesz valamit, de mindegy...Már azt is félreolvasod sokszor amit írok:(
    Sőt mögé elé meg ki tudja hova látsz dolgokat.Mindegy.
    Egyébként tudom hogy irritáló néha a személyiségem;]

    [Szerkesztve]

  • Rover623

    félisten

    válasz tildy #33 üzenetére

    :F
    Ez most komoly...?
    Abba kötsz bele, hogy én 3 paramétert soroltam fel, VladimiR pedig ezt az ''egy-két'' kifejezéssel illette...? Vagy én nem értek valamit...?

    Azért férfiemberek között ez már casus belli...

    Valóban három dolgot soroltam fel, de ez azért bonyolultabb...
    Rengeteg információt kell kinyerni...oldalakat lehetne erről értekezni...

    P.S.:
    Az anyaszerepet meg felejtsd el már végre...hoyuka megvédi magát ha szükségesnek érzi...


    [Szerkesztve]

  • tildy

    nagyúr

    válasz VladimirR #32 üzenetére

    CPU+Cache+sebesség detektálás
    És ezt Rover623 barátunk írta, nem hoyuka...
    ez akárhogy számolom 3 paraméter. Neked nem?
    idézet tőled
    sem pedig azt, hogy olyan szinten ne ertsen a dologhoz, hogy felfogja, itt nem egy-ket parameterrol van szo

    Na most akkor hogy is van ez?

    [Szerkesztve]

  • VladimirR

    nagyúr

    válasz tildy #22 üzenetére

    Ha erre a sorra gondolsz:
    ''Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor ''
    Akkor te nem vagy tisztában a szavak értelmével.


    ezen sor nekem harom fele jelentest hordozhat, melyek durva forditasa a kovetkezok:

    -hubazz! ez pascalban 10 000 sor? de szar...
    -hubazz! neked ez 10 000 sor? de szar vagy...
    -hoooo...1-2 parameternek ennyi??? 10 000??? hoooo....

    en ezek kozul az elsot vettem, megpedig azert, mert sem azt nem kivantam feltetelezni a mondat gazdajarol, hogy igy lehuzzon valakit, aki segiteni probalt neki (mert lassuk be, azont ul, hogy volt benne egy kis kritika is, fokkep segitsegrol szolt), sem pedig azt, hogy olyan szinten ne ertsen a dologhoz, hogy felfogja, itt nem egy-ket parameterrol van szo

    teny es valo, hogy Rover623 elso mondata sertonek hathat kicsit, s a smiley felett is konnyu elsiklani egy ilyen hangvetelu mondat utan, de szerintem ettol az a hozzaszolas meg igenis segitokesz es hasznos

  • tildy

    nagyúr

    válasz Rover623 #28 üzenetére

    Akkor lenne a nagy pofáraesés, ha kiderülne , hogy ő is programozik esetleg annyi ideje mint te;]
    Csak esetleg nincs akkora szája, meg nem kérkedik vele.

  • Rover623

    félisten

    válasz tildy #29 üzenetére

    Biztos azért linux a jele, mert biztos winben programozik...

    Hát...ha abból indulok ki, hogy fennakadt az én őszinte avatar választásomon...
    :U

    Ne feledd, az internet egyik ''jótéteménye'', hogy elfedhetjük kilétünket, ill. tetszeleghetünk olyan szerepkörökben is, amelyekről a VV-ban csak álmodhatunk...;]

    P.S.:
    Sajnos az első mikroprocessor piaci megjelenésekor én éppen azon keseregtem, hogy vége a boldog ovis éveknek, nemsokára kezdődik az ÉLET...közeleg az iskola...;)

    [Szerkesztve]

  • tildy

    nagyúr

    válasz Rover623 #27 üzenetére

    Miért te egyből intel pentiummal a kezedben születtél?
    LOL.

    Ha ezt mondod ''szerinted magától alap szintről az ember nem fog tudni ilyet csinálni ma már '', és nem pedig alázol, abból mindenki jobban ért, és nem offoljuk ilyen faszán szét a topikot.
    Menjünk inkább a ring topicba.

    Biztos azért linux a jele, mert biztos winben programozik...


    [Szerkesztve]

  • Rover623

    félisten

    válasz tildy #26 üzenetére

    Látom, nálad nem vagyok bejövős...no sebaj, amúgy is nős vagyok már...;]

    A ''programozópalánta'' tágan értelmezhető fogalom...valóban: láthatólag 1-2 (max. 3) éve foglalkozik programozással, valószínűleg Winfos környezetben, C++ nyelven...ez még belefér...szerintem...
    Einstein után szabadon: minden relatív!!!
    (Láttad a Némó nyomában című animációs filmben a teknősöket...?:DD)

    P.S.:
    Amúgy meg szvsz hoyuka nagykorú, én meg nem vagyok a papája hogy finomkodjak vele...ezen nem kell besértődni...
    Az ember legyen tisztában a képességeivel...én sem leszek súlyemelő, és ha találkoznánk, nem sértődnék meg, ha azt mondanád: hát, nem vagy egy Stallone...akciószínésznek ne menj!
    Istenem, hát nálam nem a csont és izomrendszerre koncentrált a teremtő...:DDD

    [Szerkesztve]

  • Rover623

    félisten

    válasz tildy #22 üzenetére

    Tildy kedves...!

    Természetesen nem haragszom...:DD

    Nem kérkedéssel kezdtem...az első hsz-emben jeleztem a srácnak: ha ilyen minimális szintről indít (2005-ben), szinte esélye nincsen hogy önerőből megoldja a problémát...tehettem ezt azért, mert ''belülről'' látom a dolgot...
    A 90-es évek elején évente bukkantak fel olyan progik amelyek a hardware bogarászását tűzték ki célul...aztán ezek szépen elfogytak (ki emlékszik az INTROSCOPE progira? Pedig a Gucik mérnök úr nem volt buta fiú...), és az ezredfordulóra gyakorlatilag eltűntek a kezdeményezések...maradtak a ''nagyok''...(az egyetlen kivétel talán a volt szovjet területek, ahol rengeteg tehetséges ember van...lásd CPU-Z).
    Ebből a tendenciából számomra egyértelmű a következtetés...manapság már lehetetlen vállalkozás egy ilyen kaliberű feladat megoldása önerőből...annak ellenére, hogy most nagyságrendekkel egyszerűbb információkat gyűjteni a web-ről mint 10-15 évvel ezelőtt...

  • tildy

    nagyúr

    válasz Rover623 #24 üzenetére

    ''Mivel nem ma kezdtem a szakmát (ráadásul, bár a hozzászólásaimból nem ez jön le, dolgoztam sokat csapatban is), egy programozópalántáról elég nagy biztonsággal tudom megállapítani, hogy mire képes, vagy hova fejlődhet''
    :Y:Y:Y

    Ki tudja, lehet ő sem ma kezdte a ''szakmát''.Nem tudhatjuk.
    Az hogy ilyet még nem csinált, nem jelenti azt hogy más , szintén programozói dologban nem lehet nagyon ott a szeren.
    Ezzel csak magadat minősíted:((

    [Szerkesztve]

  • Rover623

    félisten

    válasz hoyuka #23 üzenetére

    hoyuka!

    Azért vannak az avatarok-nem...?

  • Rover623

    félisten

    válasz tildy #20 üzenetére

    Tildy!

    Ha te elmégy egy balettiskolába, és a testméreteid: 160cm/80kg, akkor a felvételiztető jó közelítéssel állíthatja rólad, hogy nem leszel jó a Hattyúk tavá-ban Odette szerepére...mivel már látott pár növendéket és arról is van elképzelése, milyen kvalitások kellenek az adott szakmához...;]

    Mivel nem ma kezdtem a szakmát (ráadásul, bár a hozzászólásaimból nem ez jön le, dolgoztam sokat csapatban is), egy programozópalántáról elég nagy biztonsággal tudom megállapítani, hogy mire képes, vagy hova fejlődhet...
    Példa:
    Annak idején a Gamestar elődjéhez, a PC-X magazinhoz én ajánlottam be a Fiery-t, mint tehetséges rendszerprogramozót...s lám miből lesz a cserebogár...:U

  • hoyuka

    csendes tag

    válasz Rover623 #21 üzenetére

    Ugy erzem avatarod illik a szemelyisegedhez :O

  • tildy

    nagyúr

    válasz Rover623 #21 üzenetére

    Ha erre a sorra gondolsz:
    ''Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor ''
    Akkor te nem vagy tisztában a szavak értelmével.

    Nem tudom én kapásból így értettem , ''Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 sor '', de úgy látszik az én mondandóm után már szegény hoyukáéba is bele kellett kötnöd:((

    Tudod aki tud, meg ért hozzá, az nem ilyen kérkedős stílusban adja elő magát, hanem megpróbál normálisan segíteni, nem pedig lehülyézni.
    Elhiszem , hogy nagyon tudsz, de sajaos nálam is az ilyen ''mentalitás'' inkább azt érzékelteti velem , hogy lehet csak ''kérkedik'' az illető.
    Mod:
    Valószínű ilyen embertől mint te inkább segítséget sem kérnék, főleg egy ilyen mondat után:''1. valszeg egy kukkot nem értenél belől''
    1. nem ismerjük programozás téren hoyuka mennyire járatos , tehát ilyet feltételezni baromi nagy baklövés is lehet
    2. igencsak hogy is mondjam , lenézed, de kurvára, miközben kb. annyit tudunk róla, hogy mit tud az fsbk kinyeréséről, avagy mit nem:(

    Remélem nem haragszol meg, de ez a véleményem.


    [Szerkesztve]

  • Rover623

    félisten

    válasz hoyuka #18 üzenetére

    Es itt hol sajnalom le a pascal-t?

    Ha nem vagy tisztában az általad kimondott szavak értelmével, nincs értelme beszélgetnünk...ahogy látom VladimiR is megértette, tehát nem velem van a baj...

    Es ezzel teged sem akartalak lesajnalni.
    :F Állítottam én valahol ilyet...?

    Hat neharagudj! Nekem teljes jogom van ketelkedni benne! Maximum megverhetsz! Honnan tudjam en, hogy te valoban tudod.?

    Vita vége! Jó hogy nem mondod nyíltan: hazudok...:(((
    Ha gondolod, elküldhetem neked az említett programmodulokat, de:
    1. valszeg egy kukkot nem értenél belőle...
    2. ha értenéd, akkor sem tudnád egyből felhasználni, mert sok más saját modulra is hivatkoznak...a teljes forrást meg nem adom oda...
    3. le sem tudnád fordítani, mert csak a saját runtime library-mel műx...;]

    P.S.:
    Ebben az országban kb. 3-4 ember van, aki segíteni tudna neked...de nem fog...
    Fiery már ebből él, ergo nem teheti..., a győri Szalai Laci egy nagy kókler, évek óta nem hallottam róla...engem meg most ''üldöztél'' el!:DDD

  • tildy

    nagyúr

    válasz Rover623 #19 üzenetére

    Látom azért az önfényezésen kívűl másik hülyének nézése nagyon megy. Már bocs.(Bár nem használtam szerintem túlontúl kemény szavakat) (pl. a hoyukanak írt ''Ha alapból ennyi rálátásod van a dologra (értsd: nem tudtál összeszedni a netről ennél több infót...), akkor elég reménytelen...;] '' vagy csak lássuk az előbbi was ist dasos dolgot )
    Tudom hogy írják a was ist dast,van is németből nyelvvizsgám, nem kell kijavítani.

    Ja és szerintem ne offoljunk többet:(

    [Szerkesztve]

    [Szerkesztve]

  • Rover623

    félisten

    válasz tildy #16 üzenetére

    Látod itt a különbség...
    1. valóban nem egy nagy ''was ist das''...de rávilágít arra, hogy ha valaki nincs teljesen tisztában azzal, hogy mit is olvas ki éppen a prociból és a kiolvasott adatot miként lehet értelmezni, az (legyen akármilyen nagy nevű ''guru'') könnyen belebonyolódhat a kódolásba...
    2. engem nem kért meg senki az optimalizálásra...ránéztem és láttam mit csinál...ezt írtam le egyetlen sorban...;]

  • hoyuka

    csendes tag

    válasz Rover623 #13 üzenetére

    Jezus!

    ''Hol sajnaltam en le a Pascalt?
    Hát itt:
    Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor ''

    Es itt hol sajnalom le a pascal-t? Honnan veszed, hogy ebben a mondatban a hangsuly a pascalon van? A 10000 sor az sokkal hangsulyosabb. Es ezzel teged sem akartalak lesajnalni. Maga az a teny sajnalatos, hogy 1-2 parameter megallapitasahoz ennyit kell gorcsolni....

    ''Ha valamit nem tudsz...legalább ne kételkedj annak a szavában, aki meg tudja...''

    Hat neharagudj! Nekem teljes jogom van ketelkedni benne! Maximum megverhetsz! Honnan tudjam en, hogy te valoban tudod.? ( ''Mindenki okos, mert azthiszi magarol!'' Sziami )

    udv.

  • Rover623

    félisten

    válasz tildy #12 üzenetére

    Elhiszem , hogy ekkora kóder zseni vagy, csak kicsit ''önmagasztalásnak tűnt '' ez: ''Ja...mivel valszeg nem vagyok agytröszt, kellett hozzá 15+ év tapasztalat...vagy a Az elkövető (Samuel DEMEULEMEESTER, mellesleg a www.x86-secret.com chief editora..''

    Kedves Ildi! Mivel hölgy vagy, és én nagyon tisztelem a hölgyeket (pláne azokat, akiknek az ereiben bitek is folydogálnak...), finoman válaszolok neked...:

    Igen, részben önmagasztalás...:B
    Igen, nekem 15+ év kellett hozzá...vannak akiknek kevesebb (gondolom ismered Miklós Tamás alias Fiery-t, az AIDA-EVEREST szerzőjét...? Neki elég volt kevesebb mint 10! De pl. a HWINFO szerzőjének, a cseh Martin Malik-nak is kevesebb időre volt szüksége...), vannak viszont akiknek egy élet sem lenne rá elég...;]

    Szóval szigorúan szvsz ilyen progit szerintem C-ben, c++ban ''ILLIK'' írni.
    Hát akkor kedves Ildi, akár hölgy vagy, akár nem...sajnos jó munkát végzett rajtad az oktatási rendszer...kóser kis dogmákat sikerült belepréselni az okos fejecskédbe...

    A már említett AIDA-EVEREST szintén Pascal-ban íródott, majd a Windows-os változatok Delphi-ben...a HWINFO program assemblyben, de a Windows-os változat már szintén Delphi keretrendszert kapott...akkor miről is beszélünk...?
    Hidd el: olyan komplikáltságú programrendszerekről van itt szó, aminek a hardware vonatkozású részeit is éppen elég komoly munka áttekinteni...semmi szükség arra hogy még a C mindent megengedő lazaságából adódó rejtett programozási hibákkal is küszködjön az ember fia...


  • tildy

    nagyúr

    Hát a belinkelt optimalizálás nem egy nagy wasisdas:F
    Még én is értem...:D Sőt ha valaki mondja , hogy optimalizáljam már le, valszínűleg meg is tudom csinálni.
    Fieryt pedig ismerem, szokott itt lenni ph-n.

    [Szerkesztve]

  • Flashy

    veterán

    egy 2200+ meg egy 2400+ Tbred-et meg se lehet különböztetni szoftverből, csak azt lehet megállapítani hogy most éppen mennyin megy...

  • VladimirR

    nagyúr

    válasz hoyuka #10 üzenetére

    az a mondatod, hogy t ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor'' eleg ''lesajnalas'' szagu

    az, meg hogy kiszeded a family, model, stepping kodokat, meg csak arra eleg, hogy nagyjabol megmondd (egy nem eppen kis meretu adatbazisbol - ertsd.: tobb ezer sor), milyen procirol van szo, pl: AMD Barton, nevleges min/max orajel, nevleges cache meret/sebesseg -- ezutan meg kell az aktualis fsb/szorzo/cache sebessegek -- es ha jol sejtem, nincs ket proci, aminel ez a lekerdezes ugyanugy megy -- namost ha osszeszamolod, hogy hany fele procirol tudsz akkor az a 3500 sor mar nem is tunik olyan soknak

    kulon megirni meg azert jo, mert latod, hogy Te ilyet is tudsz, meg buszkeseg, meg akar el is adhatod

  • Rover623

    félisten

    válasz hoyuka #10 üzenetére

    Hol sajnaltam en le a Pascalt?

    Hát itt:

    Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor

    Erre pedig:

    Akkor sem hiszem, hogy kb. 10e Pascal sor a kovetkezo infok megallapitasa:

    te magad válaszoltál:

    A tobbihez hozza sem tudok szolni. Fogalmam sincs hogy lehet megallapitani, mennyi cache van a prociban, ebbol mennyi az L1, mennyi az L2, mennyi a kod es adat cache.

    Ha valamit nem tudsz...legalább ne kételkedj annak a szavában, aki meg tudja...;]

    Ha én arra kényszerülnék hogy tanácsot kérjek valakitől, nem az lenne az első reakcióm, hogy nem hiszem el amit mond...akkor mi a patvarnak kérdeztem meg...:F
    Szerintem hanyagold a témát...vagy pedig tanulmányozd azokat a forrásokat amiket említettem...:(

  • tildy

    nagyúr

    válasz Rover623 #11 üzenetére

    Elhiszem , hogy ekkora kóder zseni vagy, csak kicsit ''önmagasztalásnak tűnt '' ez: ''Ja...mivel valszeg nem vagyok agytröszt, kellett hozzá 15+ év tapasztalat...vagy a Az elkövető (Samuel DEMEULEMEESTER, mellesleg a www.x86-secret.com chief editora..''

    Én tanultam mindkettő nyelvet, c-t is, pascalt is, elhet tána pascal még jobban is megy, de vannak bizonyos elveim, mit mire érdemes használni. Pl. erre tuti nem javaban fognék neki. És nemcsak amiatt mert hülye vagyok a javahoz...

    Persze meg lehet más programnyelvvel is oldani, de...
    Szóval szigorúan szvsz ilyen progit szerintem C-ben, c++ban ''ILLIK'' írni.

  • Rover623

    félisten

    válasz tildy #8 üzenetére

    Naja igazad van, csak mondjuk én spec C-t használtam volna rá, semmiképpen nem pascalt.
    Mert gondolom azt tanultál...vagy azt tanítottak neked...
    A Pascal könnyebben olvasható, szigorúbb...C-ben könnyű átláthatatlan forrást előállítani...

    C...Linux...bűvszavak...;]

    Tavaly nekiálltam bogarászni néhány forrást...a Memtest-ben találtam az alábbi kódrészletet (nagyteljesítményű Linux guruk követték el...)...témába vág, hiszen az AMD procik egyik családjának szorzó megállapításáról van szó:

    temp = fid & 0x1E;

    for(j = 4; j < sizeof(amd64cm)/sizeof(amd64cm[0]); j++) {

    if (amd64cm[j] == temp) {

    coef = j;

    break;

    }

    }

    /* Support for .5 coef */

    if ((fid & 1) == 1) { coef = coef + 0.5; }

    (Volt hozzá egy amd64cm nevű jópofa tömböcske is, aminek az első négy eleme 0 volt, az ötödik elemtől kezdve pedig egész számok voltak egyesével növekvő sorrendben...)

    A tömböt elhagytam és a fenti ''salátát'' helyettesítettem ezzel a sorral:

    coef = ( fid / 2 ) + 4.0;

    Az elkövető (Samuel DEMEULEMEESTER, mellesleg a www.x86-secret.com chief editora...), csak ennyit válaszolt: Damn, that's right :D

    Nem a nyelv számít...a feladat átlátása, a korrekt egyszerű kódolás...

    Nem tudom, ha rendszerszintű programozás, akkor valahogy nem a pascal(, java , stb) ugrik be elsőként mint jó megoldás.

    Asszem' megválaszoltam...:U


    [Szerkesztve]

  • hoyuka

    csendes tag

    válasz Rover623 #9 üzenetére

    Hali!


    Most nem igazan ertem mirol beszelsz. Hol sajnaltam en le a Pascalt? En ebben a forumban ilyett nem mondtam. (Igaz a hatam kozepere se kivannam, jo nekem a C++)

    A tobbihez hozza sem tudok szolni. Fogalmam sincs hogy lehet megallapitani, mennyi cache van a prociban, ebbol mennyi az L1, mennyi az L2, mennyi a kod es adat cache.
    En abban remenykedtem, hogy a Linuxos megoldasban szolgaltatott parameterek alapjan (stepping, model, lofasz...) ki lehet szedni egy adatbazisbol a reszletesebb infokat.

    Akkor sem hiszem, hogy kb. 10e Pascal sor a kovetkezo infok megallapitasa:
    - CPU pontos tipusa
    - L1 cache merete
    - L2 cache merete es frekvenciaja
    - FSB frekvencia
    - szorzo
    (gondolom, ha a CPU tipusat eleg pontosan meg lehet hatarozni, akkor ahhoz a cache adatokat mar csak vmi adatbazisbol kell kiolvasni, ha igy van, akkor mar csak az az adatbazis kell...)


    Nem feltetlenul akarom en ezt kulon megirni. Ha valaki mar korrektul megcsinalta OpenSource-ban, akkor en minek talaljam fel ujbol a spanyol viaszt?


    udv.

  • Rover623

    félisten

    válasz hoyuka #5 üzenetére

    Szerintem meg elég szomorú, hogy gőzöd nincs a feladat bonyolultságáról, de azért lesajnálod a Pascal-t...:U
    A Linux-ban l***sz van, nem pedig információs modul...
    Egyébként tényleg használok assembly betéteket mert ugye a C-ben sincsen CPUID utasítás...?;]
    Egy program nem attól jó, hogy assemblyben írták, vagy C-ben, vagy LISP-ben...
    Attól jó, hogy azt csinálja ami a feladata, elfogadható sebességgel csinálja (már ha az adott feladatnál ez értelmezhető), ésszerű erőforrásigénye van...
    A programozó oldaláról pedig az az ésszerű, ha olyan fejlesztői környezetet választ amiben hatékonyan tud dolgozni, könnyen tud hibát keresni, stb...
    A program aminek a része az említett 8700 sornyi kód, összesen több mint 142000 sorból áll. Lefordítva kb. 1.350.000 byte, de ebből 20K a header, tehát marad 1.330.000byte. Mivel Intel környezetben jó közelítéssel mondhatjuk azt, hogy egy assembly sor kb. 3 byte-nyi gépi kódra fordítódik le, ezért ez megfelel kb. 440.000 sornyi assembly kódnak...
    Tudod mit? Tartsd ezt karban egyedül te...!;]
    Egyszer régen volt egy olyan tanaram, aki felmérésekre hivatkozva azt mondta: egy jó programozó egyedül maximum 15-20.000 sornyi kódot képes teljesen áttekinteni, karbantartani, fejleszteni, stb...ehhez mérd magad...;)

  • tildy

    nagyúr

    válasz Rover623 #7 üzenetére

    Naja igazad van, csak mondjuk én spec C-t használtam volna rá, semmiképpen nem pascalt.
    Nem tudom, ha rendszerszintű programozás, akkor valahogy nem a pascal(, java , stb) ugrik be elsőként mint jó megoldás.

    [Szerkesztve]

  • Rover623

    félisten

    válasz tildy #4 üzenetére

    Kedves tildy...
    Mivel neked valami végzettséged is van emlékeim szerint, tudhatnád: a való életben előforduló feladatok 99%-ra gyakorlatilag bármelyik magasszintű nyelv megfelel...amit meg lehet írni C-ben, azt meg lehet írni Pascal-ban is...meg Basic-ben is...:U
    Amit meg assemblyben csináltak, azt pedig vagy meg lehet írni C, Pascal, stb. tájszólásban (csak nagyobb lesz a kód, meg lassabb)...vagy nem...:C

  • VladimirR

    nagyúr

    válasz tildy #4 üzenetére

    mer' pascal roxx (es mert szinte 100, hogy hasznal benne asm-et is) ;]

    hoyuka: 3500 sor nem olyan sok, figyelembe veve azt, hogy jopar adatot kell kiszedned, tovabba hogy eleg sokfele processzorral kell megbirkoznod, tovabba azt, hogy semmi alapod nincs, mindent magad kell csinalj...

  • hoyuka

    csendes tag

    válasz Rover623 #3 üzenetére

    Hali!

    Hat ez eleg szomoru, hogy 1-2 parameter detektalasa 10000 pascal sor :). A Linux kernelt nezegettem, ott par sor assembly az egesz egy kis C wrapperral. Mondjuk ez tenyleg nem olyan teljes, amilyet en szeretnek.
    Jo volna vmi free tool, amibol ezeket ki lehetne nezni (szedni) :) Vagy vmi OS fuggetlen OpenSource library, ami ezeket az infokat szolgaltatja.

    udv.

  • tildy

    nagyúr

    válasz Rover623 #3 üzenetére


    Egyébként meg pacalban írtad? Miért nem c-ben pl?Vagy assemblyben;] Ha már úgyis ilyen régóta programozol...


    [Szerkesztve]

  • Rover623

    félisten

    válasz hoyuka #1 üzenetére

    Ha alapból ennyi rálátásod van a dologra (értsd: nem tudtál összeszedni a netről ennél több infót...), akkor elég reménytelen...;]

    Saját péda:
    CPU+Cache+sebesség detektálás...3500 pacal sor!
    Ezek értelmezése és kijelzése...5300 pacal sor!
    És ez még nem full extrás...:B
    Ja...mivel valszeg nem vagyok agytröszt, kellett hozzá 15+ év tapasztalat...

    Próbálkozz a gyártók (Intel, AMD, stb) oldalairól proci speckókat és programmer manual-okat letölteni, azokban rengeteg info van...
    Tanulmányozd át a Linux kernel-t, a MemTest forrását, stb...


    [Szerkesztve]

  • VladimirR

    nagyúr

    válasz hoyuka #1 üzenetére

    Hi

    nem sokat ertek a temahoz, de talan tudok segiteni

    ''A RAM az FSB frekvenciajan megy?''
    nem feltetlenul, szinte mindig volt lehetoseg a ram-ok asszinkron hajtasara (no meg ddr/qpb, bar ez mar csak szamolgatas kerdese)

    ''Az L1 cache ugye a CPU frekvenciajan uzemel (tehat FSB*szorzo)?''
    passz -- de pl vannak procik, amiken nem is volt l1 cache (jo, tudom, van aki nem is hallott a 386-rol, de akkoris)

    ''Az L2 cache milyen frekvencian uzemel?''
    valtozo
    egyes processzorokhoz nem is volt l2 cache, hanem ez az alaplapon helyezkedett el - meg voltak procik, amikhez ez sem lehetett talan (valamelyik celeron), ezek sebessegerol nem tudok mondani semmit, amik meg mar a procin magan voltak, azok altalaban 1/3 1/2 2/3 1/1 aranyban voltak a proci sebessegehez (ha jol tudom)

    ''A cpu_family, model es stepping parameterek mi a rakot jelentenek?''
    family: ez asszem azt jelzi, hogy 386, 486, pentium/mmx, pentium pro/II/celeron/III/xeon, stb, vagy am486/5x68, k5/k6/k6-2/k6-3, k7, stb
    model: a csalad tagjai kozul melyik is (pl.: pentium pro/II/celeron/III/xeon csaladbol a pentium III)
    stepping: passz, gondolom tvabbi pontositas, mert pl a p3-nk es a p3 xeon-nak a csalad- es modelszama is ugyanaz (6, illetve 7)

    ''Lehetseges-e ebbol az informaciobal a CPU pontos tipusat meghatarozni? (pl. AMD Athlon XP 2400+ Thoroughbred B)''
    nem, max annyit, hogy AutenthicAMD AthlonXP thoroughbred B
    (bar nalad az a model_name igen nagy segitseg)

    asszem ennyit tudok segiteni, meg talan annyi, hogy nezz be ide => Bővebben: link, meg ide => Bővebben: link hatha hasznat tudod venni

  • hoyuka

    csendes tag

    Hali!

    Szeretnem progibol detektalni a kovetkezoket: CPU tipus (lehetoleg minnel reszletesebben), FSB frekvencia, szorzo, cache informaciok.

    Sajnos a konkret megvalositason kivul egy csomo dologgal nem vagyok tisztaban.
    A RAM az FSB frekvenciajan megy?
    Az L1 cache ugye a CPU frekvenciajan uzemel (tehat FSB*szorzo)?
    Az L2 cache milyen frekvencian uzemel?

    A kovetkezo informaciokat tudnam megallapitani a Linux kernelbol kihackelt kod alapjan:

    vendor id: pl. Intel
    cpu_family: pl. 15
    model: pl. 2
    model_name: pl. Mobile Intel(R) Celeron(R) CPU 2.40GHz
    stepping: pl. 9
    cache size: pl. 256KB

    A cpu_family, model es stepping parameterek mi a rakot jelentenek?
    Lehetseges-e ebbol az informaciobal a CPU pontos tipusat meghatarozni? (pl. AMD Athlon XP 2400+ Thoroughbred B Kis Manyi floating point core V2)
    A cache size az L1 vagy az L2 vagy mindketto osszege? Hogy lehetne megtudni, hogy mennyi L1 es L2 van benne es mekkora frekvencian megy az L2?

    Az FSB frekvenciajat es a szorzot honnan lehetne megallapitani?

    udv.

    [Szerkesztve]

    [Szerkesztve]

Aktív témák

Hirdetés