نامبا

از ویکی‌پدیا، دانشنامهٔ آزاد
نامبا
نویسنده(های)
اصلی
Continuum Analytics
توسعه‌دهنده(ها)Community project
انتشار ابتدایی۱۵ اوت ۲۰۱۲؛ ۱۱ سال پیش (۲۰۱۲-15}})
انتشار پایدار
0.55.2
۲۶ مه ۲۰۲۲؛ ۲۲ ماه پیش (۲۰۲۲-26}})
انتشار آزمایشی
0.54.0rc2
۱۶ ژوئیه ۲۰۲۱؛ ۲ سال پیش (۲۰۲۱-16}})
مخزن
نوشته‌شده باپایتون (زبان برنامه‌نویسی), سی (زبان برنامه‌نویسی)
سیستم‌عاملچندسکویی
گونهفهرست نرم‌افزارهای محاسبات عددی
وبگاه

نامبا یک کامپایلر منبع باز و درجا است که زیر مجموعه پایتون و نام‌پای را با استفاده از ال‌ال‌وی‌ام، از طریق بستهٔ llvmlite Python، به کد ماشینی سریع تبدیل می‌کند. این مجموعه طیف وسیعی از گزینه‌ها را برای موازی سازی کد پایتون در سی‌پی‌یوها و جی‌پی‌یوها ارائه می‌دهد، که اغلب فقط با تغییرات جزئی کد روبرو هستند.

تراویس اولیفانت در سال ۲۰۱۲ نامبا را توسعه داد. این پروژه توسط توسعه دهندگان شرکت آناکوندا، با پشتیبانی دارپا، بنیاد گوردون و بتی مور، اینتل، انویدیا و ای‌ام‌دی و جامعه مشارکت کنندگان در گیت‌هاب انجام می‌شود.

مثال[ویرایش]

نامبا را می‌توان با اضافه کردن دکوراتور numba.jit به هر تابع پایتون که محاسبات عددی را انجام می‌دهد، استفاده کرد:

import numba
import random

@numba.jit
def monte_carlo_pi(n_samples: int):
    acc = 0
    for i in range(n_samples):
        x = random.random()
        y = random.random()
        if (x**2 + y**2) <1.0:
            acc += 1
    return 4.0 * acc / n_samples

هنگامی که تابع فراخوانی می‌شود، کامپایل درجا انجام می‌شود:

>>> monte_carlo_pi(1000000)
3.14

منابع[ویرایش]

پیوند به بیرون[ویرایش]