R:Оптимизация/Компиляция в байт-код — различия между версиями
(Новая страница: «{{CC-BY-4.0|author=автором Артём Клевцов}} {{Pkg-req-notice}} В данном материале рассматривается один из…») |
(нет различий)
|
Версия 08:48, 4 мая 2014
|
Материал «R:Оптимизация/Компиляция в байт-код», созданный автором Артём Клевцов, публикуется на условиях лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная. | |
|
Перед использованием функций из пакетов их необходимо предварительно установить и загрузить: КодR <syntaxhighlight lang="r">> install.packages(pkgs = "pkgname") > library(package = "pkgname")</syntaxhighlight> |
В данном материале рассматривается один из способов ускорения выполнения кода путём компиляции в байт-код. Байт-код - машинно-независимый код низкого уровня, генерируемый транслятором и исполняемый интерпретатором. Большинство инструкций байт-кода эквивалентны одной или нескольким командам ассемблера. Трансляция в байт-код занимает промежуточное положение между компиляцией в машинный код и интерпретацией.
Программа на байт-коде обычно выполняется интерпретатором байт-кода (обычно он называется виртуальной машиной, поскольку подобен компьютеру). Преимущество - в портируемости, т. е. один и тот же байт-код может исполняться на разных платформах и архитектурах. То же самое преимущество дают интерпретируемые языки. Однако, поскольку байт-код обычно менее абстрактный, более компактный и более «компьютерный», чем исходный код, эффективность байт-кода обычно выше, чем чистая интерпретация исходного кода, предназначенного для правки человеком.
В составе базовых пакетов R поставляется пакет compiler
, который предоставляет ряд функций для компиляции R-кода в байт-код.