Kodolányi János Egyetem Üzemmérnök-informatikus szak

FX és Ryzen 5. generációs processzorok ár-teljesítmény vizsgálata és vásárlási döntéseket segítő modellezés

Tartalom:

Kivonat:	3

Bevezetés:	4

Cél kitűzés:	5

Célcsoport:	6

Feladatok:	7

Adatok:	8

Objektumok:	10

Attribútumok:	10

Elemzés:	10

Eredmény:	12

Web Scraper program:	13

Célja:	13

Működési Leírása:	13

Követelmények:	14

Könyvtárak Telepítése:	14

Forráskód Magyarázata	15

1. Alapvető Beállítások:	15

2. HTTP Kérés és HTML Elemzés:	15

3. Adatok Kinyerése:	16

4. CSV Fájlba Írás:	17

5. Kimeneti Példa:	17

6. Lehetséges Hibák és Megoldások:	17

7. Továbbfejlesztési Lehetőségek:	18

Mellékletek:	18

Rövidítések magyarázatai:	18

Ábrajegyzék:	20

Források:	20

Kivonat:

Dolgozatom célja egy vásárlási döntést támogató manuális modellezés bemutatása, amelyben az AMD Ryzen 5. generációs és FX generációs processzorok ár-teljesítmény viszonyát vizsgálom, követve a Knuth-i elvet. Ezen elemzés közvetett célja kettős: egyrészt felkészülni egy olyan szakdolgozatra, amely minőségi szövegalkotást igényel, másrészt a manuális alapok lefektetésével lehetőséget teremteni az automatizált döntéstámogatásra.

Az informatikai beszerzés szinte minden szervezetnél és intézménynél, valamint magánszemélyek esetében is jelen van (pl. alaplapok, háttértárak, processzorok stb. vásárlása). Az objektív döntéshozatal azonban ritka, mivel ennek módszertana a közoktatásban nem szerepel. Evolúciós szempontból hajlamosak vagyunk érzelmek alapján dönteni, vagy a marketing hatására cselekedni, ami szubjektív döntésekhez vezet. Ennek elkerülésére két modellezési módszert alkalmazva bemutatom, hogyan hozhatunk hatékonyabb és objektívebb döntéseket. Valós adatok felhasználásával dolgozom, és az AMD Ryzen 5. generációs és az FX processzorcsalád néhány típusát választottam ki az elemzéshez.

Kulcsszavak: ár-teljesítmény, processzor, AMD, Ryzen, FX, modell, vásárlás, döntés, OAM, COCO

Bevezetés:

Ez a publikáció a Ryzen 5. generációs és az FX generációs processzorok főbb hardveres tulajdonságait mutatja be, kiemelve azokat a jellemzőket, amelyek alapvető fontosságúak a processzorok paraméterezéséhez és teljesítményük értékeléséhez. Az utolsóként vizsgált processzor egyfajta „ideál” (vö. irracionális), mivel ez a jelenleg elérhető legjobb és legdrágább konfiguráció a kategóriájában. Az elemzéshez szükséges adatokat a Wikipedia Ryzen processzorok oldaláról gyűjtöttem. Fontos megjegyezni, hogy egyedi konfigurációk is elérhetők, de ezek vizsgálata nem része ennek a dolgozatnak.

A dolgozatban bemutatott példák között szerepelnek az AMD Ryzen 5. generációs és az AMD FX generációs processzorai, amelyek különböző teljesítmény- és árkategóriákban helyezkednek el. Ezek a processzorok széles körben elterjedtek és különféle felhasználói igényeket elégítenek ki, lehetővé téve az optimális választást különböző alkalmazási területeken.

Cél kitűzés:

A célom egy olyan automatizált rendszer létrehozása, amely az adatbázisban szereplő Ryzen 5. és FX generációs processzorok közül a felhasználó előre meghatározott igényei alapján segít kiválasztani a legjobb opciót.

A felhasználó az igényeket előre megadott szempontok alapján adhatja meg,

Például:

Magok száma (pl. 6 mag)

Szálak száma (pl. 12 szál)

Órajel (pl. 3.6 GHz)

Cache mérete (pl. 32 MB)

TDP (pl. 65W)

Ár-teljesítmény arány

Célcsoport:

Az elsődleges célcsoport az átlag felhasználó, nem pedig a vállalati méretű igények kiszolgálása, de későbbiekben a fejlesztés során elért sikerek alapján szó lehet róla.

Feladatok:

Az első lépés a nyers adatok beszerzése volt, amelyben kizárólag az árukereső weboldal nyújtott segítséget. Ezután összesítettem az adatokat és létrehoztam egy objektum-attribútum mátrixot (OAM). Miután ez elkészült, rangsoroltam az adatokat, majd a COCO STD online robot és az ár előny-termelési függvény generátor segítségével elemeztem az OAM-ot. Végül, az utolsó feladat egy -DOCX- dokumentum elkészítése volt, amely részletesen bemutatja a publikáció témáit és elemzéseit, figyelembe véve a kapcsolódó -XLSX- fájl reprodukálhatóságát.

Adatok:

Az elemzésben 11 darab CPU-val foglalkoztam ezek pedig az alábbiak:

cpu1: FX-8350

cpu2: FX-8370

cpu3: FX-8370E

cpu4: Ryzen 5 1600

cpu5: Ryzen 5 2600

cpu6: Ryzen 5 3600

cpu7: Ryzen 5 4600G

cpu8: Ryzen 5 5600X

cpu9: Ryzen 5 5600G

cpu10: Ryzen 5 7600X

cpu11: Ryzen 5 8600

Megjelenési ár: Azaz ár, amivel kidobták a piacra dollárban értve (USD)

Architektúra: Az adott technológia alkalmazásával hozták létre magát a chippet az én esetemben számokkal van jelölve lásd “Segéd adat” munkalapon a magyarázatot.

CPU foglalat: A processzornak az alaplapi foglalata ami az évek során változott a technológiával együtt lásd “Segéd adat” munkalapon a magyarázatot.

Magok: számítógép "agysejtjei", amik a számításokat végzik. Minél több van belőlük, annál több feladatot tud egyidejűleg elvégezni a számítógép ezeket darabonként számoljuk.

Szálak: A processzorok egyes részei, amelyek képesek különböző feladatok egyidejű végrehajtására. A több szál lehetővé teszi a hatékonyabb feladatkezelést és a párhuzamos feldolgozást és ezeket darabonként számoljuk.

Alap órajel: Processzor alap sebessége, ami bármilyen változtatás nélkül képes produkálni és ezt GigaHertzben mérjük.

Turbó órajel: Processzor már felerősített sebessége a változtatás után, amit szintén GigaHertzben mérünk.

Összes cache: Processzornak a gyorsítótára, ami igazából egy memória, amit első kézből tud elérni a processzor és ennek mennyiségét MegaByteban mérünk.

TDP: Processzor hőtermelési teljesítménye, amit Wattban mérünk.

Objektumok:

Objektumaim azok nem mások, mint a felsorolt 11 darab processzorom.

Attribútumok:

Elemzési pontok:

Megjelenési ár (Y), architektúra (X1), cpu foglalat (X2), magok (X3), szálak (X4), alap órajel (X5), turbó órajel (X6), összes cache (X7), TDP (X8)

Elemzés:

Miután megvoltak az alapadatok a fent említett objektumokból es attribútumokból egy OAM táblázatot készítettem, amit irányokkal egészítettem ki lasd „Adat tábla (OAM)” ezek jelentése pedig az, hogy ha az irány 0, ha egy érték esetében igaz, hogy „minél nagyobb, annál jobb” és 1, ha „minél kisebb, annál jobb”. A korreláció megmutatja, milyen erős és milyen irányú a kapcsolat két tetszőleges érték között, vagyis hogyan viszonyulnak egymáshoz. Az X3 azaz E oszlopban -0,56 korrelál, azaz minél kevesebb mag van a processzorban annál jobb és ugyanez vall az X8 azaz J oszlopra mert itt -0,26 korrelál és ebből azt lehet lekövetkeztetni, hogy minél kevesebb a hőtermelési teljesítménye egy processzornak annál jobb.

1. ábra: “Adat tábla (OAM)”

B1-K12 tartománya

Következő lépésem az volt, hogy az OAM-ban lévő adatokból SORSZÁM függvénnyel rangsoroltam őket és ezzel összemértem, hogy melyik miben a legjobb sorrendben 1-től 11-ig. A táblázatban észleltem, hogy kettő darab processzor szinte egyforma SORSZÁM értékekkel rendelkezik, de mégis különböztek valamiben.

2. ábra: “OAM Rangsor”

A1-J11 tartománya

Mivel kettő darab processzor kiemelkedik a többi közül ezért a COCO STD nevű programot hívtam segítségül a becsléshez. A fent látható adatokat csak bemásoltam a program input ablakába és futtattam. Amivel olyan eredményt kaptam, hogy a cpu6-nak 15 dollárral drágábbnak kellene lennie, valamint azt, hogy a cpu7-nek pedig 15 dollárral olcsóbbnak. Ez alapján következtettem arra, hogy a kettő processzor egymásnak az antagonizmusa.

3. ábra: “COCO STD”

A46-M57 tartománya

Valamint a 3. ábrán még látható, hogy mennyi az adott processzorok ár-érték aránya attribútumonkénti és adott esetekben a helyezésenkénti lebontásban.

Eredmény:

Az alábbi 4. ábrán látható a COCO STD által becsült ár és az eredeti ár egymás mellett. Az y az eredeti ár oszlopa, aminek a betűjele a J és a becslés, ami a becsült ár pedig a K oszlop névre hallgat.

4. ábra: “OAM Rangsor”

J1-L12 tartománya

Web Scraper program:

Célja:

Ez a Python program az arukereso.hu oldalról gyűjt adatokat AMD processzorokról, beleértve a termék nevét, műszaki adatait és árát. Az adatokat egy Cpu_extract.csv nevű fájlba exportálja táblázatos formában.

Működési Leírása:

Adatok Gyűjtése:

A program egy előre megadott URL-t használ (jelen esetben az AMD processzorok kategóriaoldalát az arukereso.hu-n).

A program a requests könyvtár segítségével HTTP GET kérést küld, hogy letöltse az oldal HTML-tartalmát.

HTML Elemzés:

A letöltött HTML-t a BeautifulSoup könyvtár dolgozza fel.

A program kinyeri az oldalról a releváns adatokat, például a processzorok nevét, magok számát, szálak számát, foglalat típusát, órajelet, Turbo órajelet és az árat.

Adatok Mentése CSV-be:

Az adatokat egy Cpu_extract.csv nevű fájlba menti.

Minden termék adatai külön sorban jelennek meg, az oszlopok pedig a következőket tartalmazzák:

Termék neve

Magok száma

Szálak száma

Processzor foglalat

Órajel

Turbo órajel

Ár

Fájlok és Mappa Struktúra:

Cpu_extract.csv: Az összegyűjtött adatokat tartalmazó CSV fájl.

A program futtatásához csak a web_scraper.py fájl szükséges, amely tartalmazza a kódot.

Követelmények:

Könyvtárak Telepítése:

A program működéséhez az alábbi Python könyvtárak szükségesek:

requests: HTTP kérések küldéséhez.

BeautifulSoup a bs4 modulból: HTML feldolgozáshoz.

csv: Az adatok CSV formátumba írásához (ez a Python beépített könyvtára).

Telepítésük:

5. ábra: „Kép a terminálból”

Forráskód Magyarázata

1. Alapvető Beállítások:

A program az url változóban megadott kategóriaoldalról gyűjt adatokat.

A headers változó biztosítja, hogy a kérés egy böngészőt utánozzon, ezzel elkerülve az oldalak blokkolását.

6. ábra: „ryzenextract_csv.py” 5.-10. sor

2. HTTP Kérés és HTML Elemzés:

•	A requests.get() segítségével a program letölti az oldalt.

•	Ha a kérés sikeres, a BeautifulSoup elemzi a letöltött HTML-t.

7. ábra: „ryzenextract_csv.py” 13.-19. sor

3. Adatok Kinyerése:

A program a következő adatokat gyűjti:

Termék neve: A product-box osztályú <div> elem belsejében található <img> alt attribútumából.

Ár: A price osztályú <div> elemből.

Tulajdonságok:

A description osztályú <div> elemek <li> tagekből.

A <b> tagek tartalmazzák az értékeket, például a magok számát vagy az órajelet.

8. ábra: „ryzenextract_csv.py” 39.-63. sor

4. CSV Fájlba Írás:

A program az összegyűjtött adatokat egy CSV fájlba menti. Minden adat egy sorban jelenik meg, oszlopokba rendezve.

9. ábra: „ryzenextract_csv.py” 24.-37. sor

5. Kimeneti Példa:

A generált Cpu_extract.csv fájl tartalma:

Termék neve,Magok száma,Szálak száma,Foglalat,Órajel,Turbo órajel,Ár

AMD Ryzen 5 7600X,6 magos,12, AMD Socket AM5,3900 MHz,5400 MHz,104 890 Ft-tól

AMD Ryzen 5 5600,6 magos,12, AMD Socket AM4,3500 MHz,4400 MHz,95 000 Ft-tól

6. Lehetséges Hibák és Megoldások:

404 vagy 403 HTTP Kód:

Ellenőrizd az URL-t, vagy frissítsd a headers tartalmát.

Hiányzó Adatok:

Ha a product-box, price vagy description elemek nem találhatók, az oldal HTML-struktúrája változhatott. Frissítsd a kódot az aktuális struktúrához.

7. Továbbfejlesztési Lehetőségek:

Több termékkategória egyidejű feldolgozása.

A dinamikusan betöltődő tartalom (JavaScript) kezelésére Selenium integrálása.

Mellékletek:

Rövidítések magyarázatai:

AMD (Advanced Micro Devices): az említett processzorok gyártó cégének a neve.

COCO (Component based Object Comparison for Objectivity): hasonlóságelemzés. Optimalizálás keretében minden tulajdonság esetén minden rangsorszámhoz hozzárendelünk egy konkrét értéket (lépcsőt), amennyivel az adott tulajdonság hozzájárul a függő változó értékéhez.

OAM (Objektum Attribútum Mátrix): azaz egyfajta tanulási minta.

COCO STD: (COCO modul alapváltozata): amely objektumok ár-teljesítmény számításra képes, Y-ként minden esetben szükséges valós árat megadni.

DOCX: a Microsoft Word egyik jól ismert formátuma, amely 2007-ben került bevezetésre.

XLSX: a Microsoft Excel egyik jól ismert formátuma, amely 2007-ben került bevezetésre.

Knuth elv: algoritmikus megközelítés, optimalizálás később.

CPU (Central Process Unit): Számitógép agya igazából, ez kezel mindent, ami a számitógépben történik.

Processzor magok: számítógép "agysejtjei", amik a számításokat végzik. Minél több van belőlük, annál több feladatot tud egyidejűleg elvégezni a számítógép.

Processzor szálak: A processzorok egyes részei, amelyek képesek különböző feladatok egyidejű végrehajtására. A több szál lehetővé teszi a hatékonyabb feladatkezelést és a párhuzamos feldolgozást.

GHz: Processzor sebességének mérése, minél magasabb, annál gyorsabb.

MB: Adatmennyiség mértékegysége, például fájlok vagy memória mérete.

W: Teljesítmény mértékegysége (Watt), például egy eszköz fogyasztása.

TDP: Hőtermelési teljesítmény, azaz egy hardvereszköz által kibocsátott hőmennyiség.

Cache: Gyorsítótár, közeli memória a processzorhoz, amely gyorsabb adatelérési sebességet biztosít.

USD: Amerikai Egyesült Államok fizető eszközének rövidítése.

Web scraper: olyan program, amely automatikusan adatokat gyűjt weboldalakról.

HTTP GET kérés: olyan kérés, amellyel egy weboldal tartalmát kérjük le.

HTML: a weboldalak felépítéséhez használt jelölőnyelv.

BeautifulSoup: Python könyvtár, amely megkönnyíti a HTML kód feldolgozását és az adatok kinyerését.

CSV (Comma-Separated Values): egyszerű szövegfájl, amely táblázatos adatokat tartalmaz, oszlopokat vesszővel elválasztva.

Headers: HTTP kérésekhez csatolt információk, például a böngésző típusa – ezzel hitelesebbé tehető a kérés.

Attribútum: HTML tagekhez kapcsolódó tulajdonság, pl. <img alt="szöveg"> esetén az "alt" egy attribútum.

Div: HTML elem, amely egy szakaszt jelöl a weboldalon.

Tag: HTML kódelem, például <div>, <li>, <b>.

dinamikusan betöltődő tartalom: olyan weboldalelemek, amelyek JavaScript segítségével töltődnek be, nem azonnal jelennek meg.

Selenium: olyan eszköz, amely automatizálja a böngésző működését, így JavaScript által vezérelt oldalak is feldolgozhatók vele.

Ábrajegyzék:

1. ábra: “Adat tábla (OAM)” B1-K12 tartománya

2. ábra: “OAM Rangsor” A1-J11 tartománya

3. ábra: “COCO STD” A46-M57 tartománya

4. ábra: “OAM Rangsor” J1-L12 tartománya

5. ábra: Kép a terminálból

6. ábra: „ryzenextract_csv.py” 5.-10. sora

7. ábra: „ryzenextract_csv.py” 13.-19. sora

8. ábra: „ryzenextract_csv.py” 39.-63. sora

9. ábra: „ryzenextract_csv.py” 24.-37. sora

Források:

CPU_2.1_xlsx

ryzenextract_csv.py

GL04AH – Jónás György – review:

A dokumentum végén található „Rövidítések magyarázatai” szekció részletesen felsorolja a rövidítéseket (pl. AMD, OAM, COCO, CPU, USD stb.), ami jó gyakorlat. Azonban a szövegben több rövidítést már korábban használnak anélkül, hogy először teljes alakjukat megadnák.

A „Knuth-i elv” a rövidítések magyarázatában szerepel, de csak homályosan utalnak rá („algoritmikus megközelítés, optimalizálás később”), és a dokumentumban nem kerül részletezésre, hogy pontosan hogyan kapcsolódik az elemzéshez.

Strukturális következetlenség: A dokumentum szerkezete részben megfelel a szakdolgozati elvárásoknak (Kivonat, Bevezetés, Célkitűzés stb.), de bizonyos részek (pl. „Mellékletek” vagy „Ábrajegyzék”) nem elég részletesek, és a szekciók közötti átmenetek nem mindig logikusak. Például a „Scraper program” szekció hirtelen vált a processzorok elemzéséről egy technikai leírásra, anélkül, hogy az átmenetet megindokolnák.

Nyelvhasználat és tudományos stílus: A szöveg helyenként informális vagy nem elég pontos. Például:

„amivel kidobták a piacra” helyett tudományos kontextusban, „amelyet a piacra dobtak” vagy „amelyet forgalomba hoztak” lenne megfelelőbb.

Minden állítást pontosítani kell, és kerülni a homályos vagy túl általános kifejezéseket. Például, ha egy processzor „ideál”, akkor meg kell határozni, hogy milyen paraméterek (pl. ár, teljesítmény, energiafogyasztás) alapján.

Célcsoport pontosítása: A „Célcsoport” szekció röviden említi, hogy az „átlag felhasználó” a cél, de nem definiálja, hogy mit jelent ez (pl. otthoni felhasználók, gamerek, diákok?). Érdemes pontosítani, hogy kikre fókuszál az elemzés.

Hiányzó összefoglalás: A dokumentumban nincs külön „Összegzés” vagy „Konklúzió” szekció, amely összefoglalná az elemzés főbb megállapításait és a vásárlási döntéstámogatás gyakorlati hasznát.

Rövidítések jegyzéke(VBA használat):

FX

HTTP

HTML

CSV – CSV (Comma-Separated Values): egyszerű szövegfájl, amely táblázatos adatokat tartalmaz, oszlopokat vesszővel elválasztva.

AMD – AMD (Advanced Micro Devices): az említett processzorok gyártó cégének a neve.

OAM – OAM (Objektum Attribútum Mátrix): azaz egyfajta tanulási minta.

COCO – COCO (Component based Object Comparison for Objectivity): hasonlóságelemzés. Optimalizálás keretében minden tulajdonság esetén minden rangsorszámhoz hozzárendelünk egy konkrét értéket (lépcsőt), amennyivel az adott tulajdonság hozzájárul a függő változó értékéhez.

MB

TDP – TDP (pl. 65W)

STD

DOCX

XLSX

CPU – CPU (Central Process Unit): Számitógép agya igazából, ez kezel mindent, ami a számitógépben történik.

USD

URL

GET