Ruby to wysokopoziomowy język programowania, który znany jest przede wszystkim z tego, iż pozwala na tworzenie eleganckiego i zwięzłego kodu. Niemniej jednak nie jest on powszechnie uznawany za język o wysokiej wydajności. Dlatego też czasem może zaistnieć potrzeba przeniesienia części obliczeń do kodu natywnego, aby zwiększyć szybkość działania programu. W tym artykule opiszę kilka sposobów, które umożliwią osiągnięcie tego celu.
Analiza wydajności będzie odbywało się na systemie Arch Linux, Ruby w wersji 3.2, i9-12900K, 128GB RAM. Dzięki temu porównanie czasu wykonania będzie racjonalne. Jako autor przestrzegam jednak przed wyciąganiem zbyt daleko idących wniosków na podstawie małej liczby próbek...
Zagadnienia poruszane w tym artykule:
- Kod w Ruby;
- Fiddle;
- FFI;
- RubyInline;
- SWIG;
- Ruby/C API.
Artykuł pochodzi z magazynu Programista nr 108 (3/2023). Magazyn jest z okresu wakacji 2023 roku. Szczegółowy spis treści wydania nr 104: https://programistamag.pl/programista-3-2023-108/
Autorem artykułu jest Paweł "Krzaq" Zakrzewski. https://dev.krzaq.cc. Absolwent Automatyki i Robotyki oraz Informatyki na Zachodniopomor-skim Uniwersytecie Technologicznym. Pracuje jako Software Engineer w Sauce Labs. Programowaniem interesuje się od dzieciństwa, jego ostat-nie zainteresowania to C++ i metaprogramowanie.