Python ์–ธ์–ด์šฉ ์ปดํŒŒ์ผ๋Ÿฌ์ธ Nuitka 0.6.17 ์ถœ์‹œ

์ด์ œ Nuitka 0.6.17 ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ C++ ํ‘œํ˜„์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•œ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ๊ฐœ๋ฐœํ•œ ๋‹ค์Œ ์ตœ๋Œ€ CPython ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด libpython์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ ํŒŒ์ผ๋กœ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๋„ค์ดํ‹ฐ๋ธŒ CPython ๊ฐœ์ฒด ๊ด€๋ฆฌ ๋„๊ตฌ ์‚ฌ์šฉ). ํ˜„์žฌ Python 2.6, 2.7, 3.3 - 3.9 ๋ฆด๋ฆฌ์Šค์™€์˜ ์™„๋ฒฝํ•œ ํ˜ธํ™˜์„ฑ์ด ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค. CPython๊ณผ ๋น„๊ตํ•˜์—ฌ ์ปดํŒŒ์ผ๋œ ์Šคํฌ๋ฆฝํŠธ๋Š” pystone ๋ฒค์น˜๋งˆํฌ์—์„œ 335%์˜ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” Apache ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

์ƒˆ ๋ฒ„์ „์—๋Š” ์ฝ”๋“œ ํ”„๋กœํŒŒ์ผ๋ง(PGO - ํ”„๋กœํŒŒ์ผ ๊ธฐ๋ฐ˜ ์ตœ์ ํ™”) ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ตœ์ ํ™”์— ๋Œ€ํ•œ ์‹คํ—˜์  ์ง€์›์ด ์ถ”๊ฐ€๋˜์–ด ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์ค‘์— ๊ฒฐ์ •๋œ ๊ธฐ๋Šฅ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ ํ™”๋Š” ํ˜„์žฌ GCC๋กœ ์ปดํŒŒ์ผ๋œ ์ฝ”๋“œ์—๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด์ œ ํ”Œ๋Ÿฌ๊ทธ์ธ์—๋Š” ์ปดํŒŒ์ผ ํƒ€์ž„์— ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค(pkg_resources.require). ์•ˆํ‹ฐ ๋ธ”๋กœํŠธ ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ๊ธฐ๋Šฅ์ด ํฌ๊ฒŒ ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋ถˆํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ œ์™ธํ•˜๊ณ  ํ•„์š”ํ•œ ๊ธฐ๋Šฅ ์ฝ”๋“œ๋ฅผ ๋‹ค์Œ์—์„œ ๋Œ€์ฒดํ•˜๋Š” ๋“ฑ numpy, scipy, skimage, pywt ๋ฐ matplotlib ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ํŒจํ‚ค์ง€ ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒ์‹ฑ โ€‹โ€‹๋‹จ๊ณ„. ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ, ํด๋ž˜์Šค ์ƒ์„ฑ, ์†์„ฑ ํ™•์ธ, ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ๊ณผ ๊ด€๋ จ๋œ ์ตœ์ ํ™”๋œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. bytes, str ๋ฐ list ์œ ํ˜•์„ ์‚ฌ์šฉํ•œ ์ž‘์—…์ด ๊ฐ€์†ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€