Facebook เช“เชชเชจ เชธเซ‹เชฐเซเชธ เชธเชฟเชจเซเชกเชฐ, CPython เชจเซ‹ เชซเซ‹เชฐเซเช• เช‡เชจเซเชธเซเชŸเชพเช—เซเชฐเชพเชฎ เชฆเซเชตเชพเชฐเชพ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชฏ เช›เซ‡

เชซเซ‡เชธเชฌเซเช•เซ‡ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชธเชฟเชจเซเชกเชฐ เชฎเชพเชŸเซ‡เชจเซ‹ เชธเซเชคเซเชฐเซ‹เชค เช•เซ‹เชก เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซเชฏเซ‹ เช›เซ‡, เชœเซ‡ CPython 3.8.5 เชจเซ‹ เชซเซ‹เชฐเซเช• เช›เซ‡, เชœเซ‡ Python เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเชจเชพ เชฎเซเช–เซเชฏ เชธเช‚เชฆเชฐเซเชญ เช…เชฎเชฒเซ€เช•เชฐเชฃ เช›เซ‡. เช‡เชจเซเชธเซเชŸเชพเช—เซเชฐเชพเชฎเชจเซ‡ เชชเชพเชตเชฐ เช†เชชเชตเชพ เชฎเชพเชŸเซ‡ Facebook เชจเชพ เชชเซเชฐเซ‹เชกเช•เซเชถเชจ เช‡เชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐเชฎเชพเช‚ เชธเชฟเชจเซเชกเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชชเซเชฐเชฆเชฐเซเชถเชจ เชธเซเชงเชพเชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡.

เชฎเซเช–เซเชฏ CPython เชซเซเชฐเซ‡เชฎเชตเชฐเซเช•เชฎเชพเช‚ เชคเซˆเชฏเชพเชฐ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจเชจเซ‡ เชชเซ‹เชฐเซเชŸ เช•เชฐเชตเชพเชจเซ€ เชถเช•เซเชฏเชคเชพเชจเซ€ เชšเชฐเซเชšเชพ เช•เชฐเชตเชพ เช…เชจเซ‡ CPython เชชเซเชฐเชฆเชฐเซเชถเชจ เชธเซเชงเชพเชฐเชตเชพเชฎเชพเช‚ เชธเชพเชฎเซ‡เชฒ เช…เชจเซเชฏ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเซเชธเชจเซ‡ เชฎเชฆเชฆ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เซ‹เชก เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡. Facebook เชเช• เช…เชฒเช— เช“เชชเชจ เชธเซ‹เชฐเซเชธ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเชพ เชฐเซ‚เชชเชฎเชพเช‚ เชธเชฟเชจเซเชกเชฐเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชตเชพเชจเซ‹ เช‡เชฐเชพเชฆเซ‹ เชงเชฐเชพเชตเชคเซเช‚ เชจเชฅเซ€ เช…เชจเซ‡ เช•เซ‹เชก เชคเซ‡ เชซเซ‹เชฐเซเชฎเชฎเชพเช‚ เชฐเชœเซ‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡เชฎเชพเช‚ เช•เช‚เชชเชจเซ€เชจเชพ เช‡เชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐเชฎเชพเช‚ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡, เชตเชงเชพเชฐเชพเชจเชพ เช•เซ‹เชฎเซเชฌเชฟเช‚เช— เช…เชจเซ‡ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ‹ เชตเชฟเชจเชพ. เชคเซ‡เช“ CPython เชจเชพ เชตเชฟเช•เชฒเซเชช เชคเชฐเซ€เช•เซ‡ เชธเชฟเชจเซเชกเชฐเชจเซ‡ เชชเซเชฐเชฎเซ‹เชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เชชเชฃ เช•เชฐเชคเชพ เชจเชฅเซ€ - เชตเชฟเช•เชพเชธเชจเซเช‚ เชฎเซเช–เซเชฏ เชงเซเชฏเซ‡เชฏ CPython เชชเซ‹เชคเซ‡ เชธเซเชงเชพเชฐเชตเชพเชจเซ€ เช‡เชšเซเช›เชพ เช›เซ‡.

เชธเชฟเชจเซเชกเชฐ เช•เซ‹เชกเชจเซ‡ เช‰เชคเซเชชเชพเชฆเชจ เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช‚ เชเช•เชฆเชฎ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เช…เชจเซ‡ เชšเช•เชพเชธเชพเชฏเซ‡เชฒ เชคเชฐเซ€เช•เซ‡ เชจเซ‹เช‚เชงเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชœเซ‹ เชธเชฎเชธเซเชฏเชพเช“ เช“เชณเช–เชตเชพเชฎเชพเช‚ เช†เชตเซ‡, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชคเซ‡เชจเซ‡ เชœเชพเชคเซ‡ เชนเชฒ เช•เชฐเชตเซ€ เชชเชกเชถเซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชซเซ‡เชธเชฌเซเช• เช—เซ‡เชฐเซ‡เช‚เชŸเซ€ เช†เชชเชคเซเช‚ เชจเชฅเซ€ เช•เซ‡ เชคเซ‡ เชฌเชพเชนเซเชฏ เชญเซ‚เชฒ เชธเช‚เชฆเซ‡เชถเชพเช“ เช…เชจเซ‡ เชชเซเชฒ เชตเชฟเชจเช‚เชคเซ€เช“เชจเซ‹ เชœเชตเชพเชฌ เช†เชชเชถเซ‡. เชคเซ‡ เชœ เชธเชฎเชฏเซ‡, Facebook เชธเชฎเซเชฆเชพเชฏ เชธเชพเชฅเซ‡ เชฐเชšเชจเชพเชคเซเชฎเช• เชธเชนเช•เชพเชฐเชจเซ‡ เชฌเชพเช•เชพเชค เชฐเชพเช–เชคเซเช‚ เชจเชฅเซ€ เช…เชจเซ‡ เชธเชฟเชจเซเชกเชฐเชจเซ‡ เชตเชงเซ เชเชกเชชเซ€ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเซเช‚ เช…เชฅเชตเชพ CPython เชจเชพ เชฎเซเช–เซเชฏ เชญเชพเช—เชฎเชพเช‚ เชคเซˆเชฏเชพเชฐ เชซเซ‡เชฐเชซเชพเชฐเซ‹เชจเชพ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฃเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชเชกเชชเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชคเซ‡ เช…เช‚เช—เซ‡เชจเชพ เชตเชฟเชšเชพเชฐเซ‹เชจเซ€ เชšเชฐเซเชšเชพ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชคเซˆเชฏเชพเชฐ เช›เซ‡.

เชธเชฟเชจเซเชกเชฐเชฎเชพเช‚ เชฎเซเช–เซเชฏ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒ เช›เซ‡:

  • เชฌเชพเช‡เชŸเช•เซ‹เชกเชจเซเช‚ เช‡เชจเชฒเชพเช‡เชจ เช•เซ‡เชถเซ€เช‚เช— ("เชถเซ‡เชกเซ‹ เชฌเชพเช‡เชŸเช•เซ‹เชก"). เชชเชฆเซเชงเชคเชฟเชจเซ‹ เชธเชพเชฐ เชเชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชจเซ‡ เช“เชณเช–เชตเชพเชจเซ‹ เช›เซ‡ เช•เซ‡ เชœเซเชฏเชพเช‚ เชเช• เชฒเชพเช•เซเชทเชฃเชฟเช• เช“เชชเช•เซ‹เชก เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡เชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡, เช…เชจเซ‡ เช†เชตเชพ เช“เชชเช•เซ‹เชกเชจเซ‡ เชเชกเชชเซ€ เชตเชฟเชถเชฟเชทเซเชŸ เชตเชฟเช•เชฒเซเชชเซ‹ เชธเชพเชฅเซ‡ เช—เชคเชฟเชถเซ€เชฒ เชฐเซ€เชคเซ‡ เชฌเชฆเชฒเชตเซเช‚ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชตเชพเชฐเช‚เชตเชพเชฐ เช•เชนเซ‡เชตเชพเชคเชพ เช•เชพเชฐเซเชฏเซ‹เชจเซ‡ เชฌเชฆเชฒเชตเซเช‚).
  • เช†เชคเซเชฐ เช•เซ‹เชฐเซ‹เชŸเซ€เชจ เชฎเซ‚เชฒเซเชฏเชพเช‚เช•เชจ. async เชซเช‚เช•เซเชถเชจ เช•เซ‰เชฒเซเชธ เชฎเชพเชŸเซ‡ เช•เซ‡ เชœเซ‡ เชคเชฐเชค เชœ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เชชเซเชฐเชคเซ€เช•เซเชทเชพ เช เชชเซเชฐเชคเซ€เช•เซเชทเชพเชฎเชพเช‚ เชชเชฐเชฟเชฃเชฎเชคเซเช‚ เชจเชฅเซ€ เช…เชจเซ‡ เชซเช‚เช•เซเชถเชจ เช…เช—เชพเช‰ เชฐเซ€เชŸเชฐเซเชจ เชธเซเชŸเซ‡เชŸเชฎเซ‡เชจเซเชŸ เชชเชฐ เชชเชนเซ‹เช‚เชšเซ‡ เช›เซ‡), เช†เชตเชพ เชซเช‚เช•เซเชถเชจเซเชธเชจเซเช‚ เชชเชฐเชฟเชฃเชพเชฎ เช•เซ‹เชฐเซ‹เชŸเซ€เชจ เชฌเชจเชพเชตเซเชฏเชพ เชตเชฟเชจเชพ เช…เชฅเชตเชพ เช‡เชตเซ‡เชจเซเชŸ เชฒเซ‚เชชเชจเซ‡ เชธเชพเชฎเซ‡เชฒ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชธเซ€เชงเชพ เชœ เชฌเชฆเชฒเชพเชˆ เชœเชพเชฏ เช›เซ‡. เชซเซ‡เชธเชฌเซเช• เช•เซ‹เชก เช•เซ‡ เชœเซ‡ เช…เชธเช‚เชฏเช•/เชชเซเชฐเชคเซ€เช•เซเชทเชพเชจเซ‹ เชญเชพเชฐเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡, เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชฒเช—เชญเช— 5% เชจเซ€ เชเชกเชชเชฎเชพเช‚ เชชเชฐเชฟเชฃเชฎเซ‡ เช›เซ‡.
  • เชตเซเชฏเช•เซเชคเชฟเช—เชค เชชเชฆเซเชงเชคเชฟเช“ เช…เชจเซ‡ เช•เชพเชฐเซเชฏเซ‹เชจเชพ เชธเซเชคเชฐเซ‡ เชชเชธเช‚เชฆเช—เซ€เชฏเซเช•เซเชค JIT เชธเช‚เช•เชฒเชจ (เชชเชฆเซเชงเชคเชฟ-เช-เชŸเชพเช‡เชฎ). "-X jit" เชตเชฟเช•เชฒเซเชช เช…เชฅเชตเชพ PYTHONJIT=1 เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชตเซ‡เชฐเซ€เชเชฌเชฒ เชฆเซเชตเชพเชฐเชพ เชธเช•เซเชทเชฎ เช…เชจเซ‡ เชคเชฎเชจเซ‡ 1.5-4 เชตเช–เชค เช˜เชฃเชพ เชชเซเชฐเชฆเชฐเซเชถเชจ เชชเชฐเซ€เช•เซเชทเชฃเซ‹เชจเชพ เช…เชฎเชฒเชจเซ‡ เชเชกเชชเซ€ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡. JIT เชธเช‚เช•เชฒเชจ เชฎเชพเชคเซเชฐ เชตเชพเชฐเช‚เชตเชพเชฐ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เชฅเชคเชพ เชซเช‚เช•เซเชถเชจเซเชธ เชฎเชพเชŸเซ‡ เชœ เชธเซเชธเช‚เช—เชค เชนเซ‹เชตเชพเชฅเซ€, เชญเชพเช—เซเชฏเซ‡ เชœ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชคเชพ เชซเช‚เช•เซเชถเชจเซเชธ เชฎเชพเชŸเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชธเชฒเชพเชน เช†เชชเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ€ เชจเชฅเซ€, เชœเซ‡เชจเซเช‚ เชธเช‚เช•เชฒเชจ เช“เชตเชฐเชนเซ‡เชก เชซเช•เซเชค เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชจเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ‡ เชงเซ€เชฎเซเช‚ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

    เชตเชฟเช•เชฒเซเชช โ€œ-X jit-list-file=/path/to/jitlist.txtโ€ เช…เชฅเชตเชพ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชตเซ‡เชฐเซ€เชเชฌเชฒ โ€œPYTHONJITLISTFILE=/path/to/jitlist.txtโ€ เชฆเซเชตเชพเชฐเชพ เชคเชฎเซ‡ เชซเช‚เช•เซเชถเชจเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เชธเชพเชฅเซ‡ เชซเชพเช‡เชฒเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เชœเซ‡เชจเชพ เชฎเชพเชŸเซ‡ JIT เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ (เชชเชพเชฅ เชซเซ‹เชฐเซเชฎเซ‡เชŸ .to.module:funcname เช…เชฅเชตเชพ path.to.module:ClassName.method_name). เชตเชฟเชงเซ‡เชฏเซ‹เชจเซ€ เชธเซ‚เชšเชฟ เช•เซ‡ เชœเซ‡เชจเชพ เชฎเชพเชŸเซ‡ JIT เชธเช•เซเชทเชฎ เชนเซ‹เชตเซ€ เชœเซ‹เชˆเช เชคเซ‡ เชชเซเชฐเซ‹เชซเชพเช‡เชฒเชฟเช‚เช— เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเชพ เช†เชงเชพเชฐเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชญเชตเชฟเชทเซเชฏเชฎเชพเช‚, เชซเช‚เช•เซเชถเชจ เช•เซ‰เชฒเซเชธเชจเซ€ เช†เชตเชฐเซเชคเชจเชจเชพ เช†เช‚เชคเชฐเชฟเช• เชชเซƒเชฅเซเชฅเช•เชฐเชฃเชจเชพ เช†เชงเชพเชฐเซ‡ เชกเชพเชฏเชจเซ‡เชฎเชฟเช• JIT เชธเช‚เช•เชฒเชจ เชฎเชพเชŸเซ‡ เชธเชฎเชฐเซเชฅเชจ เช…เชชเซ‡เช•เซเชทเชฟเชค เช›เซ‡, เชชเชฐเช‚เชคเซ Instagram เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชถเชฐเซ‚ เช•เชฐเชตเชพเชจเซ€ เชตเชฟเชถเชฟเชทเซเชŸเชคเชพเช“เชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชคเชพ, JIT เชธเช‚เช•เชฒเชจ เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เชคเชฌเช•เซเช•เซ‡ เชซเซ‡เชธเชฌเซเช• เชฎเชพเชŸเซ‡ เชชเชฃ เชฏเซ‹เช—เซเชฏ เช›เซ‡.

    JIT เชธเซŒเชชเซเชฐเชฅเชฎ เชชเชพเชฏเชฅเซ‹เชจ เชฌเชพเชˆเชŸเช•เซ‹เชกเชจเซ‡ เชนเชพเชˆ-เชฒเซ‡เชตเชฒ เชˆเชจเซเชŸเชฐเชฎเซ€เชกเชฟเชฏเซ‡เชŸ เชฐเชฟเชชเซเชฐเซ‡เชเชจเซเชŸเซ‡เชถเชจ (HIR) เชฎเชพเช‚ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เชชเชพเชฏเชฅเซ‹เชจ เชฌเชพเชˆเชŸเช•เซ‹เชกเชจเซ€ เชเช•เชฆเชฎ เชจเชœเซ€เช• เช›เซ‡, เชชเชฐเช‚เชคเซ เชธเซเชŸเซ‡เช•-เช†เชงเชพเชฐเชฟเชคเชจเซ‡ เชฌเชฆเชฒเซ‡ เชฐเชœเชฟเชธเซเชŸเชฐ-เช†เชงเชพเชฐเชฟเชค เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชฎเชถเซ€เชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฐเชšเชพเชฏเซ‡เชฒ เช›เซ‡, เช…เชจเซ‡ เชชเซเชฐเช•เชพเชฐ เชฎเชพเชนเชฟเชคเซ€ เช…เชจเซ‡ เชตเชงเชพเชฐเชพเชจเซ€ เชฎเชพเชนเชฟเชคเซ€เชจเซ‹ เชชเชฃ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เชชเซเชฐเชฆเชฐเซเชถเชจ-เชจเชฟเชฐเซเชฃเชพเชฏเช• เชตเชฟเช—เชคเซ‹ (เชœเซ‡เชฎ เช•เซ‡ เชธเช‚เชฆเชฐเซเชญ เช—เชฃเชคเชฐเซ€). เชคเซเชฏเชพเชฐเชฌเชพเชฆ HIR เชจเซ‡ SSA (เชธเซเชŸเซ‡เชŸเชฟเช• เชธเชฟเช‚เช—เชฒ เชเชธเชพเช‡เชจเชฎเซ‡เชจเซเชŸ) เชซเซ‹เชฐเซเชฎเชฎเชพเช‚ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡ เช“เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจ เชธเซเชŸเซ‡เชชเซเชธเชฎเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชพเชฏ เช›เซ‡ เชœเซ‡ เชธเช‚เชฆเชฐเซเชญ เช—เชฃเชคเชฐเซ€ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชตเชชเชฐเชพเชถ เชกเซ‡เชŸเชพเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡ เช›เซ‡. เชชเชฐเชฟเชฃเชพเชฎเซ‡, เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชญเชพเชทเชพเชจเซ€ เชจเชœเซ€เช•, เชจเชฟเชฎเซเชจ-เชธเซเชคเชฐเชจเซ€ เชฎเชงเซเชฏเชตเชฐเซเชคเซ€ เชฐเชœเซ‚เช†เชค (LIR) เชœเชจเชฐเซ‡เชŸ เชฅเชพเชฏ เช›เซ‡. LIR-เช†เชงเชพเชฐเชฟเชค เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจเชจเชพ เชฌเซ€เชœเชพ เชคเชฌเช•เซเช•เชพ เชชเช›เซ€, asmjit เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เชธเซ‚เชšเชจเชพเช“ เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

  • เชฎเซ‹เชกเซเชฏเซเชฒเซ‹ เชฎเชพเชŸเซ‡ เช•เชกเช• เชฎเซ‹เชก. เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพเชฎเชพเช‚ เชคเซเชฐเชฃ เช˜เชŸเช•เซ‹ เชถเชพเชฎเซ‡เชฒ เช›เซ‡: StrictModule เชชเซเชฐเช•เชพเชฐ. เชเช• เชธเซเชฅเชฟเชฐ เชตเชฟเชถเซเชฒเซ‡เชทเช• เชœเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ เช•เซ‡ เชฎเซ‹เชกเซเชฏเซเชฒเชจเชพ เช…เชฎเชฒเชจเซ€ เชคเซ‡ เชฎเซ‹เชกเซเชฏเซเชฒเชจเซ€ เชฌเชนเชพเชฐเชจเชพ เช•เซ‹เชก เชชเชฐ เช•เซ‹เชˆ เช…เชธเชฐ เชฅเชคเซ€ เชจเชฅเซ€. เชฎเซ‹เชกเซเชฏเซเชฒ เชฒเซ‹เชกเชฐ เชœเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชฎเซ‹เชกเซเชฏเซเชฒเซ‹ เช•เชกเช• เชฎเซ‹เชกเชฎเชพเช‚ เช›เซ‡ (เช•เซ‹เชก "เช‡เชฎเซเชชเซ‹เชฐเซเชŸ __เชธเซเชŸเซเชฐเชฟเช•__" เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ‡ เช›เซ‡), เช…เชจเซเชฏ เชฎเซ‹เชกเซเชฏเซเชฒเซ‹ เชธเชพเชฅเซ‡ เช†เช‚เชคเชฐเช›เซ‡เชฆเซ‹เชจเซ€ เช—เซ‡เชฐเชนเชพเชœเชฐเซ€ เชฎเชพเชŸเซ‡ เชคเชชเชพเชธ เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เช•เชกเช• เชฎเซ‹เชกเซเชฏเซเชฒ เช“เชฌเซเชœเซ‡เช•เซเชŸ เชคเชฐเซ€เช•เซ‡ sys.modules เชฎเชพเช‚ เช•เชกเช• เชฎเซ‹เชกเซเชฏเซเชฒเซ‹ เชฒเซ‹เชก เช•เชฐเซ‡ เช›เซ‡.
  • เชธเซเชŸเซ‡เชŸเชฟเช• เชชเชพเชฏเชฅเซ‹เชจ เช เชชเซเชฐเชพเชฏเซ‹เช—เชฟเช• เชฌเชพเช‡เชŸเช•เซ‹เชก เช•เชฎเซเชชเชพเช‡เชฒเชฐ เช›เซ‡ เชœเซ‡ เชŸเชพเช‡เชช-เชธเซเชชเซ‡เชธเชฟเชซเชฟเช• เชฌเชพเช‡เชŸเช•เซ‹เชก เชœเชจเชฐเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชŸเชพเช‡เชช เชเชจเซ‹เชŸเซ‡เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡ JIT เช•เชฎเซเชชเชพเช‡เชฒเซ‡เชถเชจเชจเซ‡ เช†เชญเชพเชฐเซ€ เช›เซ‡. เช•เซ‡เชŸเชฒเชพเช• เชชเชฐเซ€เช•เซเชทเชฃเซ‹เชฎเชพเช‚, เชธเซเชŸเซ‡เชŸเชฟเช• เชชเชพเชฏเชฅเซ‹เชจ เช…เชจเซ‡ JIT เชจเซเช‚ เชธเช‚เชฏเซ‹เชœเชจ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค CPython เชจเซ€ เชธเชฐเช–เชพเชฎเชฃเซ€เชฎเชพเช‚ 7 เช—เชฃเชพ เชธเซเชงเซ€เชจเชพ เชชเซเชฐเชฆเชฐเซเชถเชจ เชธเซเชงเชพเชฐเชฃเชพ เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡. เช˜เชฃเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚, เชชเชฐเชฟเชฃเชพเชฎเซ‹ MyPyC เช…เชจเซ‡ Cython เช•เชฎเซเชชเชพเช‡เชฒเชฐเซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชจเชœเซ€เช• เชนเซ‹เชตเชพเชจเซ‹ เช…เช‚เชฆเชพเชœ เช›เซ‡.

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹