Aller au contenu principal
2025 dissertation

Native compilation for R functions

0Citations signalées, ce qui n’est pas une note de qualité
0Institutions déclarées
0Pays d’affiliation déclarés

Le résumé fourni par la source

Programovací jazyk R je oblíbený nástroj matematiků a statistiků, kteří ho využívají pro náročné matematické operace a datovou analýzu. Kvůli tomu, že se ale jedná o vyšší programovací jazyk a lze ho spouštět pouze za pomocí AST nebo bytecode interpreteru, můžeme u něj počítat s menším výpočetním výkonem oproti nižším jazykům. Z toho důvodu vznikl projekt výzkumné skupiny PRL-PRG zvaný Rsh. Balíček Rsh se skládá ze dvou částí, nejdříve server, který překládá R bytecode do C, který nakonec nechá přeložit do binárního souboru. Druhá část toho balíčku je klient, který takto zkompilovaný kód může načíst a spustit. V rámci této diplomové práce si vysvětlíme jaké jsou základní struktury programovacího jazyka R, jak pracuje s bytecode, jaká je základní struktura projektu Rsh a následně si projdeme naší implementací tohoto překladače v jazyku C++. Na závěr otestujeme různé přístupy kompilace binárních kódu a to jak už rozdíl kompilátorů gcc a clang, tak i chování binárních souborů při kompilaci s různým nastavením. Výsledky našich pátrání nám ukázaly, že v kompilace s nastavením -O2 se zapnutým agresivním inliningem vykazuje nejlepší výsledky napříč měření rychlosti, velikosti a kompilačního času.

Ce résumé expose les affirmations des auteurs. BNTIC ne l’interprète pas comme une validation indépendante des résultats.

Le contrôle bibliographique ouvert

Aucun DOI disponible pour le contrôle Crossref.

Les sujets associés

Scientific Computing and Data ManagementData Analysis with RComputational Physics and Python Applications

BNTIC News n’est pas le producteur de ces données. Les publications sont interrogées à la demande dans Crossref, OpenAIRE, DOAJ, Europe PMC, HAL, DataCite, AfricArXiv, ROR et la Banque mondiale, sans clé d’accès. OpenAlex reste optionnel. Aucun service payant n’est nécessaire et aucune donnée externe n’est enregistrée en base. Consulter les sources et leurs limites.