[๐Ÿ‘ฉโ€๐Ÿ’ป์—”์ง€๋‹ˆ์–ด๋ง][๐ŸŽฎ๊ฒŒ์ž„]ใ€Ž๋‚˜๋Š” ์–ด๋–ป๊ฒŒ | ์ปค๋ฆฌ์–ด๋ฆฌ

[๐Ÿ‘ฉโ€๐Ÿ’ป์—”์ง€๋‹ˆ์–ด๋ง][๐ŸŽฎ๊ฒŒ์ž„]ใ€Ž๋‚˜๋Š” ์–ด๋–ป๊ฒŒ GTA Online์˜ ๋กœ๋”ฉ์„ 70%๋‚˜ ์ค„์˜€๋‚˜?ใ€ ์—„์ฒญ ์žฌ๋ฐŒ๋Š” ์ด์•ผ๊ธฐ์ž…๋‹ˆ๋‹ค. GTA Online์˜ ํ•œ ๊ฒŒ์ด๋จธ์ด์ž ๋ชจ๋”๊ฐ€ ๊ทน์•…๋ฌด๋„ํ•œ GTA Online์˜ ๋กœ๋”ฉ์„ 6๋ถ„๋Œ€์—์„œ 1๋ถ„ 50์ดˆ๋Œ€๋กœ ์ค„์˜€๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋งค์šฐ ์žฌ๋ฐŒ๋Š” ์œ ์ € ์ตœ์ ํ™” ์‚ฌ๋ก€์ธ๋ฐ์š”. ๊ฐ„๋‹จํ•œ ํ”„๋กœํŒŒ์ผ๋ง๋งŒ์œผ๋กœ๋„ ์•Œ์ˆ˜ ์žˆ๋Š” ์ •๋ณด์ธ๋ฐ, ์™œ ๋ฝ์Šคํƒ€์—์„œ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ๋ฐœ๊ฒฌํ•˜์ง€ ๋ชปํ–ˆ๋Š”์ง€ ์ข€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ๊ณง ํŒจ์น˜๊ฐ€ ๋˜์ง€ ์•Š์„๊นŒ ์‹ถ๋„ค์š”. ์›๋ฌธ์—๋Š” ์‹ค์ œ๋กœ ์ด ๊ณผ์ •์„ ๋””ํ…Œ์ผํ•˜๊ฒŒ ์ ์–ด๋‘์—ˆ์œผ๋‹ˆ ๊ด€์‹ฌ์žˆ๋Š” ๋ถ„์€ ๋ณด์‹œ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ์ œ๊ฐ€ ํ•œ ๊ฐ„๋‹จํ•œ ์š”์•ฝ(?)์ž…๋‹ˆ๋‹ค. <๐Ÿ’ป GTA ๋กœ๋”ฉ์„ ์ค„์ด๊ธฐ> โœ…์ •์ฐฐ ๋‹จ๊ณ„ ์šฐ์„ , ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด๋ดค๊ณ , ์‹ค์ œ๋กœ 10~30์ดˆ์ •๋„ ์ ˆ์•ฝํ•œ ์‚ฌ๋ก€๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.! โœ…๋ฒค์น˜๋งˆํ‚น ๋‹จ๊ณ„ ์ธก์ •์„ ํ•ด๋ณด๋‹ˆ, GTA ์Šคํ† ๋ฆฌ๋Š” 1๋ถ„10์ดˆ ๋ฐ–์— ์•ˆ๊ฑธ๋ฆฌ๋Š”๋ฐ, ์™œ GTA online๋งŒ ๋กœ๋”ฉ์—์„œ 6๋ฐฐ์ธ 6๋ถ„์ด์ƒ์ด ๊ฑธ๋ฆฌ๋Š”๊ฑด์ง€ ์˜๋ฌธ์„ ๊ฐ€์ง€๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. โœ… ํ˜น์‹œ ๋‚˜๋งŒ ๊ทธ๋Ÿฐ๊ฐ€? ๋‹จ๊ณ„ ์„ค๋ฌธ์กฐ์‚ฌ๋ฅผ ํ•œ๊ฒฐ ๊ณผ, ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด 3๋ถ„์ด์ƒ์ด ๊ฑธ๋ฆฌ๊ณ , ์•ˆ์ข‹์€ ๊ฒฝ์šฐ 6๋ถ„์„ ๋„˜๋Š” ๊ฒฝ์šฐ๋„ ํ—ˆ๋‹คํ–ˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. โœ… ์ธก์ • ๋‹จ๊ณ„ ์ข€๋” ์ •ํ™•ํ•œ ์ธก์ •์„ ์œ„ํ•ด "์œˆ๋„์šฐ ์ž‘์—…๊ด€๋ฆฌ์ž"๋ฅผ ์ด์šฉํ•ด ์กฐ์‚ฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ, ๊ณต๋™ ๋ฆฌ์†Œ์Šค๋ฅผ ๋กœ๋”ฉํ•˜๋Š” 1๋ถ„์ •๋„ ์†Œ์š”๋œ ํ›„, ๋‚จ์€ 4~5๋ถ„์€ ์‹ฑ๊ธ€์ฝ”์–ด๋ฅผ ์ตœ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๊ณ , ๋‹ค๋ฅธ ์ž‘์—…์€ ์•„์˜ˆ ์—†์Œ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. - ๋””์Šคํฌ ์‚ฌ์šฉ๋Ÿ‰ X - ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ๋Ÿ‰? ์•ฝ๊ฐ„ ์žˆ์ง€๋งŒ ๋ช‡ ์ดˆํ›„ 0์œผ๋กœ ๋–จ์–ด์ง - GPU,๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋„ ๊ฑฐ์˜ ์—†์Œ. โœ… ๋‹จ์ผ ์Šค๋ ˆ๋“œ ์‚ฌ์šฉ ์ œ PC์˜ AMD CPU๋Š” ์ธํ…” CPU๋ณด๋‹ค ๋‹จ์ผ ์“ฐ๋ ˆ๋“œ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง€๋‹ค๋Š”๊ฑธ๋กœ ์•Œ๋ ค์ ธ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ œ PC์˜ ๋กœ๋”ฉ์ด ๋Š๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ทธ๋ ‡๋‹ค๊ณ  ํ•˜๊ธฐ์—” ๋„ˆ๋ฌด CPU๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. ์ €๋Š” ์˜คํžˆ๋ ค ๋„คํŠธ์›Œํฌ ๋กœ๋“œ๋‚˜ ๋””์Šคํฌ ์ฝ๊ธฐ๋ฅผ ์˜ˆ์ƒํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ์ด๋Š” "๋ฒ„๊ทธ"๊ฐ€ ์•„๋‹Œ๊ฐ€ ์‹ถ์Šต๋‹ˆ๋‹ค. โœ… ํ”„๋กœํŒŒ์ผ๋ง CPU ๋ณ‘๋ชฉ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœํŒŒ์ผ๋Ÿฌ๋ฅผ ์ด์šฉํ–ˆ๊ณ , ์˜ค๋ž˜๊ฑธ๋ฆฌ๋Š” ํ•จ์ˆ˜์˜ ์œ„์น˜๋ฅผ ์•Œ์•„๋ƒˆ์Šต๋‹ˆ๋‹ค. โœ… ๋“ค์–ด๊ฐ€๋ด…์‹œ๋‹ค. ๋””์Šค์–ด์…ˆ๋ธ”์„ ํ•ด๋ดค๊ณ , ์ด๊ฒŒ ์•„๋‹Œ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ๋ฆฌ๋ฒ„์Šค ์—”์ง€๋‹ˆ์–ด๋ง ๋ณดํ˜ธ๊ธฐ๋Šฅ์ด ์žˆ๋Š”๊ฒƒ ๊ฐ™๋„ค์š”. ํ•˜์ง€๋งŒ ๊ฑฑ์ •๋งˆ์„ธ์š”. ์šฐ๋ฆฌ๊ฐ€ ๋ณด๊ณ ์‹ถ์€ ๋ถ€๋ถ„๋งŒ ๋ณด๋ฉด ๋˜๋‹ˆ๊นŒ์š”. ์ €๋Š” ํ”„๋กœ์„ธ์Šค ๋คํ”„๋ฅผ ์ด์šฉํ•ด๋ดค์Šต๋‹ˆ๋‹ค. โœ… ๋ฌธ์ œ 1. strlen strlen ํ˜•ํƒœ์˜ ๊ตฌ๋ฌธ์ด ๋‚˜์˜ค๊ณ , sscanf๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. ์Œ.. ์ด๊ฑด ๋ฌด์–ธ๊ฐ€๋ฅผ ํŒŒ์‹ฑ(parsing)ํ•˜๊ณ  ์žˆ๋Š”๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ๋ฌด์—‡์„ ํŒŒ์‹ฑํ•˜๋Š” ๊ฑธ๊นŒ์š”? ํ”„๋กœ์„ธ์Šค์˜ ์ผ๋ถ€ ์ƒ˜ํ”Œ์„ ๋คํ”„ํ•œ ๊ฒฐ๊ณผ, JSON, ๋Œ€๋žต 6๋งŒ3์ฒœ๊ฐœ์˜ ํ•ญ๋ชฉ์„ ๊ฐ€์ง„ 10mb์˜ JSON ์ด์˜€์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‹ˆ ์ด๊ฑด ์•„๋งˆ๋„ "net shop ์นดํƒˆ๋กœ๊ทธ"๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ๋Š” ์•„์ดํ…œ๊ฐ™์€๊ฑฐ์ฃ . ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๋Š” ๊ฐ ํ•ญ๋ชฉ(63000๊ฐœ)๋งˆ๋‹ค sscanf๊ฐ€ ํ˜ธ์ถœ๋˜๊ณ , ์ด ์•ˆ์— strlenํ•จ์ˆ˜๊ฐ€ ๋ฌธ์ž์—ด ๊ธธ์ด๋ฅผ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ํŒŒ์ผ ์ „์ฒด๋ฅผ ์ฝ์Šต๋‹ˆ๋‹ค. ์ฆ‰, 10MB ๋ฌธ์ž์—ด์„ ์—ฐ๋‹ฌ์•„ ์นดํƒˆ๋กœ๊ทธ ๊ฐฏ์ˆ˜์ธ 63000๋ฒˆ ์ฝ๋Š”๊ฒ๋‹ˆ๋‹ค. โœ… ๋ฌธ์ œ 2. Hash-Array๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค๋งŒ... ํŒŒ์‹ฑ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ๊ณณ์„ ๋ณด๋‹ˆ, ์ „์ฒด ๋ฐฐ์—ด์„ ํ•˜๋‚˜์”ฉ ํ™•์ธํ•˜์—ฌ ํ•ด๋‹น ๋ชฉ๋ก์— ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ•ด์‹œ๊ฐ’์„ ์ง์ ‘ ๋น„๊ตํ•ด์„œ ํ™•์ธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. hashmap์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ, ์™œ hash์˜ ํŠน์ง•์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๊ฒƒ์ธ์ง€ ์˜๋ฌธ์ด ๊ฐ‘๋‹ˆ๋‹ค. ์ด ๋…ํŠนํ•œ ํ•ด์‹œ ๋Œ€์‹ .. ๊ทธ๋ƒฅ ๋ฐ”๋กœ hashmap์„ ์‚ฌ์šฉํ•˜๋ฉด ํ›จ์”ฌ ๋นจ๋ผ์งˆ ๊ฒ๋‹ˆ๋‹ค. โœ… ๊ฒฐ๊ณผ์ ์œผ๋กœ, ๊ธฐ์กด : 6๋ถ„ ํ•ด์‹œํ™•์ธ ํŒจ์น˜ ํ•œ ๊ฒฝ์šฐ : 4๋ถ„ 30์ดˆ JSON ํŒŒ์„œ ํŒจ์น˜ํ•œ ๊ฒฝ์šฐ : 2๋ถ„ 50์ดˆ ๋‘˜๋‹ค ํŒจ์น˜ํ•œ ๊ฒฝ์šฐ : 1๋ถ„ 50์ดˆ ๋ผ๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์ „ ์ง์ ‘ ๋””์Šค์–ด์…ˆ๋ธ”ํ•˜๊ณ , dll์„ ํ›„ํ‚นํ–ˆ์ง€๋งŒ, ๋ฝ์Šคํƒ€์—์„œ ํ•ด๋‹น ๋ถ€๋ถ„์„ ๋” ์ข‹์€ ๊ฑธ๋กœ ๋ฐ”๊พธ๋Š” ํŒจ์น˜๋ฅผ ํ•˜๋ฉด ํ•˜๋ฃจ์ •๋„ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์ˆ˜์ •ํ•˜๋ฉด ๋” ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

How I cut GTA Online loading times by 70%

meh.

2021๋…„ 3์›” 14์ผ ์˜ค์ „ 5:22

๋Œ“๊ธ€ 0

์ฃผ๊ฐ„ ์ธ๊ธฐ TOP 10

์ง€๋‚œ์ฃผ ์ปค๋ฆฌ์–ด๋ฆฌ์—์„œ ์ธ๊ธฐ ์žˆ๋˜ ๊ฒŒ์‹œ๋ฌผ์ด์—์š”!

โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ
โ€Œโ€Œ

ํ˜„์ง์ž๋“ค์˜ '์ง„์งœ ์ธ์‚ฌ์ดํŠธ'๊ฐ€ ๋‹ด๊ธด ์—…๊ณ„ ์ฃผ์š” ์†Œ์‹์„ ๋ฐ›์•„๋ณด์„ธ์š”.

์ปค๋ฆฌ์–ด๋ฆฌ | ์ผ์ž˜๋Ÿฌ๋“ค์˜ ์ปค๋ฆฌ์–ด SNS