
The fastest LoongArch sandbox
libloong एक 64-बिट उच्च-प्रदर्शन लूंगआर्क एमुलेटर लाइब्रेरी है जो एम्बेडिंग और उच्च-आवृत्ति स्क्रिप्टिंग के लिए डिज़ाइन की गई है। libriscv की वास्तुकला पर निर्मित, यह उपलब्ध सबसे तेज़ 64-बिट इंटरप्रेटर प्रदर्शन प्रदान करती है, जबकि एक कॉम्पैक्ट ~18k LOC कोडबेस और शून्य निर्भरताएँ बनाए रखती है।
आप कमांड-लाइन इंटरफ़ेस में लूंगआर्क64 लिनक्स प्रोग्राम भी चला सकते हैं।
CoreMark 1.0 इंटरप्रेटर बेंचमार्क (दिसंबर 2025) में, libloong Ryzen 7950X पर 64-बिट श्रेणी में अग्रणी है, विश्वसनीय रूप से 3000+ का स्कोर प्राप्त करता है।
उन्नत मोड: जबकि पोर्टेबिलिटी के लिए दुभाषिया प्राथमिक फोकस है, libloong में एक हल्का JIT शामिल है जो नेटिव का 38% (15.5k CoreMark) तक पहुँचता है और एक एम्बेडेड बाइनरी ट्रांसलेटर जो नेटिव का ~77% (31.9k CoreMark) तक पहुँचता है।
गेम इंजन स्क्रिप्टिंग वह जगह है जहाँ libloong उत्कृष्ट है। पारंपरिक गेम मॉडिंग को शेयर्ड लाइब्रेरीज़ (पूर्ण सिस्टम एक्सेस), Lua (~150ns कॉल ओवरहेड) जैसे एम्बेडेड VMs या Java रन-टाइम के माध्यम से उजागर करते हैं। libloong में ~4ns कॉल ओवरहेड है।

उदाहरण क्षुद्रग्रह गेम देखें।
CMake कॉन्फ़िगरेशन विकल्प:
LA_DEBUG=ON/OFF - डिबग आउटपुट सक्षम करें (डिफ़ॉल्ट: OFF)LA_BINARY_TRANSLATION=ON/OFF - बाइनरी अनुवाद सक्षम करें (डिफ़ॉल्ट: OFF)LA_THREADED=ON/OFF - थ्रेडेड बाइटकोड डिस्पैच सक्षम करें (डिफ़ॉल्ट: ON)LA_MASKED_MEMORY_BITS=N - मास्क्ड मेमोरी एरिना का आकार 2^N बाइट्स पर सेट करें (0 = अक्षम, डिफ़ॉल्ट: 0)विकल्पों के साथ उदाहरण:
cmake .. -DCMAKE_BUILD_TYPE=Release \
-DLA_MASKED_MEMORY_BITS=32 \
-DLA_BINARY_TRANSLATION=ON
make -j6
#include <libloong/machine.hpp>
int main() {
// Load a LoongArch ELF binary
std::vector<uint8_t> binary = load_file("program.elf");
// Create a machine with 64MB memory
loongarch::Machine machine { binary, {
.memory_max = 64 * 1024 * 1024
}};
// Setup program arguments
machine.setup_linux({"program"}, {"LC_ALL=C"});
// Run the program
machine.simulate();
}
| दुभाषिया | वास्तुकला | स्कोर |
|---|
| libloong | 64-बिट लूंगआर्क | 3045 |
| libriscv | 64-बिट RISC-V | 2865 |
| stitch | Wasm | 2743 |
| wasm3 | Wasm | 2368 |
| wasmer (WAMR) | Wasm | 2314 |
| wasmi | Wasm | 1967 |