Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Philocode
اگه توی MySQL از تایپ timestamp استفاده کنید، نمی‌تونید تاریخ‌های قدیمی‌تر از 1970 و تاریخ‌های بعد 2038 رو ذخیره کنید. 👽
اگر یک مدل خوب در حد O1, O3 خواستید.
DeepCoder
نتایج خوبی رو نشون میده.

این مدل ۱۴ میلیارد پارامتر داره.
امروز دنبال یه چیزی توی shell history میگشتم اما عبارت کل عبارت رو یادم نبود به همین خاطر دنبال یه ابزار بودم که بتونه fuzzy search انجام بده یه چیزیه شبیه fzf که این پلاگین zsh رو پیدا کردم:

https://github.com/joshskidmore/zsh-fzf-history-search

@DevTwitter | <GreatBahram/>
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
فرصت رو از دست ندید

🔰آموزش مانیتورینگ در لینوکس Linux
هزینه آموزش: ۱,۰۴۰,۰۰۰ تومان
تخفیف 75 درصدی: 260,000 تومان


🔰۵۰ درس در قالب ۷ فصل


🔹فصل ۱. لینوکس
مفاهیم لینوکس و ساختار آن۰۹:۳۹
قسمت‌های سطح کاربر۰۵:۱۶
قسمت‌های سطح کرنل۰۳:۴۱
توزیع‌های مادر۰۶:۳۲
توزیع‌های مشهور و رایج۰۴:۰۲

🔹فصل ۲. مانیتورینگ قسمت‌های اصلی
مانیتورینگ فرایندها با دستور PS۰۹:۵۶
مانیتورینگ فرایندها با دستورات Top ،Atop و Htop۱۵:۰۹
مانیتورینگ اطلاعات CPU۰۴:۵۱
مانیتورینگ اطلاعات بایوس با Dmidecode۰۳:۳۹
مانیتورینگ سیستم فایل Sysfs۰۵:۱۵
مانیتورینگ مصرف حافظه با دستور Free۰۳:۲۲
مانیتورینگ مصرف حافظه با دستور Smem۰۵:۵۲
مانیتورینگ مصرف حافظه با دستور Vmstat۰۷:۳۰
مانیتورینگ سیستم فایل با دستور Fdisk۰۳:۰۸
مانیتورینگ سیستم فایل با دستور lsblk۰۴:۲۰
مانیتورینگ سیستم فایل با دستور lsusb۰۲:۱۸
مانیتورینگ سیستم با ابزارهای گرافیکی Task Manager و Gnome Manager۱۰:۲۶
مانیتورینگ نرم‌افزاری و سخت‌افزاری سیستم با دستور و ابزار گرافیکی Hwloc & lshw۰۹:۱۶
مانیتورینگ مشخصات سخت‌افزاری سیستم۰۴:۲۳

🔹فصل ۳. ابزارهای مختلف مانیتورینگ
Sysstat۰۷:۱۱
Iostat۱۰:۵۶
Mpstat۰۸:۵۸
Pidstat۰۵:۵۵
SAR۰۸:۱۲
دستور مدیریت، آنالیز و مانیتورینگ بسته‌های شبکه Tcpdump۱۵:۳۲
ابزارهای مانیتورینگ تجاری۰۶:۲۳
توزیع‌های مخصوص مانیتورینگ۰۷:۱۵
سیستم‌های امنیتی و مانیتورینگ IDS و IPS۰۹:۵۶

🔹فصل ۴. مانیتورینگ پیام‌ها و هشدارهای هسته
مانیتورینگ پیام‌های هسته با دستور Dmesg۰۵:۳۷
مانیتورینگ لاگ‌های مختلف در سیستم۰۵:۳۳
مانیتورینگ پارامترهای هسته با دستور Sysctl۰۴:۴۴
مانیتورینگ ماژول‌های هسته۰۵:۰۶

🔹فصل ۵. مانیتورینگ فایل‌ها و دستورات
مانیتورینگ دستورات و فایل‌ها در لینوکس۰۳:۳۷
مانیتورینگ سیستم فایل با دستورات lS۰۴:۴۹
مانیتورینگ فایل‌ها بر اساس نام‌ها۰۴:۳۱
مانیتورینگ فایل‌ها بر اساس پسوندها۰۲:۳۷
مانیتورینگ فایل‌ها بر اساس مجوزها۰۴:۰۹
مانیتورینگ فایل‌ها بر اساس مالکیت۰۴:۳۰
مانیتورینگ فایل‌ها بر اساس تاریخ و زمان۰۴:۰۴
مانیتورینگ فایل‌ها بر اساس اندازه۰۳:۵۸
مانیتورینگ فرایندها در حالت‌های مختلف۰۲:۵۳
مانیتورینگ فرایندهای دارای بیشترین استفاده از حافظه۰۲:۳۵
مانیتورینگ فرایندهای دارای بیشترین استفاده از CPU۰۲:۱۷
مانیتورینگ پورت و فایل‌های باز۰۴:۴۶

🔹فصل ۶. تنظیمات بهبود عملکرد سیستم
مانیتورینگ و تنظیمات پروفایل‌های پیش‌فرض هسته۰۳:۵۸
مانیتورینگ بوت و استارت‌آپ سیستم۰۴:۰۵
مانیتورینگ منابع سیستم و مدیریت آن با دستور Ulimit۰۳:۲۷
مانیتورینگ و بررسی وضعیت سرویس‌های سیستم با دستور Systemd۰۸:۲۸

🔹فصل 7. ادامه مسیر یادگیری

📌مدرس: حسین سیلانی

📌 لینک دوره
https://faradars.org/courses/monitoring-in-linux-fvlnx101

https://www.aparat.com/v/CT9Im
Forwarded from Denver
🛠 چند alias کاربردی برای هر کاربر لینوکس
حتما با alias ها آشنایی دارین، همون لقب دادن به دستوراتمون.
کاربردش چیه؟ میتونیم کلی دستور طولانی یا حتی دستورایی که تایپ کردنشون هر دفعه مثل یه کابوس میمونه رو توی دستور مورد نظر خودمون خلاصه کنیم.
ساده تر بگیم، درواقع با اینکار داریم به شل(zsh, bash, fish) میگیم که دستور مورد نظر a معادل دستور طولانی b هست.


با این aliasها توی فایل ~/.bashrc یا ~/.zshrc می‌تونی کلی زمان تو ترمینال صرفه‌جویی کنی 💻⚡️

# ====== System Management ======
alias update="sudo apt update && sudo apt upgrade -y" # Fast system update
alias clean="sudo apt autoremove && sudo apt autoclean" # Clean cache and unnecessary packages
alias reboot="sudo reboot" # Reboot the system
alias ping="ping -c 5" # Ping with 5 packets

# ====== Navigation Shortcuts ======
alias home='cd ~' # Go to home directory
alias cd..='cd ..' # One directory up
alias ..='cd ..' # One directory up (short)
alias ...='cd ../..' # Two directories up
alias ....='cd ../../..' # Three directories up
alias .....='cd ../../../..' # Four directories up

# ====== File Search ======
alias f="find . -name" # Find file by name in current directory and subdirectories

# ====== Listing (ls) Aliases ======
alias la='ls -Alh' # List all files including hidden
alias ls='ls --color=always' # Enable colored output
alias lx='ls -lXBh' # Sort by extension
alias lk='ls -lSrh' # Sort by size
alias lc='ls -lcrh' # Sort by change time
alias lu='ls -lurh' # Sort by access time
alias lr='ls -lRh' # Recursive listing
alias lt='ls -ltrh' # Sort by date
alias lw='ls -xAh' # Wide listing format
alias ll='ls -Flsh' # Long listing format with type indicators
alias labc='ls -lap' # Alphabetical listing with hidden files
alias lf="ls -l | egrep -v '^d'" # List only files
alias ldir="ls -l | egrep '^d'" # List only directories

🔗برای راحتی کار میتونید فایل آماده ی alias هارو از لینک زیر دانلود کنید:
فایل آماده ی alias ها

📌 نکته: بعد از اضافه کردن aliasها، فراموش نکن که ترمینالت رو یه بار ببندی و باز کنی یا دستور زیر رو وارد کنی:
source ~/.bashrc  # or ~/.zshrc


#️⃣ #linux #terminal #tools


🐧 CHANNEL | GROUP
Forwarded from Linuxor ?
نیازی نیست چند تا فایل ico با سایز های مختلف توی سایتتون بزارید فلسفه فایل های ico این بوده که چند تا سایز مختلف توی یه فایل ذخیره شه


@Linuxor
یه فرصتی دست داد و کورس GenAI Intensive گوگل رو تکمیل کردم.
هرچند بیشتر مفاهیم ابتدایی بود، اما همین که فرصت شد روی Kaggle با LangChain و LangGraph ایجنت بسازم و یخورده برای LLMهای گوگل پرامپت توسعه بدم خیلی حال داد.

تمام متریال رو این زیر گذاشتم.

https://github.com/mshokrnezhad/GenAI_Intensive_Course_by_Google/blob/main/README.md

@DevTwitter | <Masoud Shokrnezhad/>
Forwarded from Geek Alerts
This media is not supported in your browser
VIEW IN TELEGRAM
یک دقیقه انیمیشن تام‌و‌جری که با AI ساختن، این به لطف روش جدید انویدیا هست که برخلاف مدل‌هایی مثل Sora از اوپن‌ای‌آی که نهایتا ۲۰ ثانیه یا Veo 2 گوگل که ۸ ثانیه ویدیو تولید میکنن متونه تا ۱ دقیقه ساخت ویدیو داشته باشه که رکورد جدیدی هست.

مشکل اصلی مدل‌های فعلی از مکانیزم «خود توجهی» (self-attention) تو معماری‌های ترنسفورمر ناشی می‌شه. این روش نیازمند اینه که هر عنصر تو یه دنباله با بقیه عناصر ارتباط داشته باشه، که باعث می‌شه نیازهای محاسباتی با افزایش زمان ویدیو به شکلی عجیبی سنگین بشه.

چالشی که به کمک انویدیا و تیمی از دانشگاه استنفورد حل شده، توی توضیحاتشون گفتن ما لایه‌های TTT رو به یه ترانسفورمرِ از قبل آموزش‌دیده اضافه می‌کنیم و اون رو برای تولید کارتون‌های یک‌دقیقه‌ای تام و جری با هماهنگی زمانی تنظیم می‌کنیم.

این کار باعث میشه ویدیوها مستقیما توسط مدل و در یه شات واحد تولید بشن، بدون هیچ ویرایش، چسبوندن یا پردازشِ پس از تولید. هر داستان هم تازه ساخته شده، میتونید برای درک بیشتر مقاله این تحقیق رو هم بخونید و دموهای بیشتر رو هم نگاه کنید.

🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
ویژگی Deep Research توی Gemini از مدل Gemini 2.0 Pro استفاده میکنه و الان به 2.5 Pro آپدیت شد.

این همون دستیار تحقیقاتی هست که صرفا مدلش آپدیت شده و تست‌ها نشون میده که گزارش‌های خروجی پیشرفت فاصله‌داری با مدل قبلی دارن و اون رو به یکی از ۳ سرویس برتر برای تحقیقات تبدیل میکنه.

استفاده‌های زیادی سرویس ریسرچ داره که وقتی موضوعی براتون سوال هست و مهمه که اطلاعات دقیق و کامل داشته باشید میتونید از این ابزار استفاده کنید، چرا که از منابع زیادی در کنار راستی‌آزمایی اطلاعات استفاده میکنه.

🔗 google
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
یه مدل اوپن‌سورس جدید به اسم DeepCoder معرفی شده که ۱۴ میلیارد پارامتر داره، این مدل که با استفاده از روش RL توزیع‌شده (distributed RL) روی مدل Deepseek-R1-Distilled-Qwen-14B فاین‌تیون شده، کارش استدلال روی کده.

تونسته تو بنچمارک LiveCodeBench به دقت 60.6% Pass@1 برسه که یعنی ۸٪ بهتر از مدل پایه عمل کرده و در حد مدل‌های مثل o3-mini-2025-01-031 (Low) و o1-2024-12-17 هست.

نکته جالب هم اوپن‌سورس بودن کامل دیتاست، کدها، لاگ‌های آموزشی و بهینه‌سازی‌های سیستمیه که برای آموزش مدل استفاده شده، همشون اوپن‌سورس هستن.

🔗 together
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
بخشی از کاربرها به ویژگی Copilot Vision دسترسی پیدا کردن، همون ویژگی هست که Copilot میتونه صفحه‌نمایش سیستم شمارو ببینه، قبلا فقط به مرورگر اج محدود بود اما الان کل صفحه ویندوز ۱۱ رو میبینه.

مزیت‌هاش زیاد هست، مثلا فتوشاپ رو باز میکنید میگید چطور یه ادیت خاص رو بزنم و آموزشتون میده یا اینکه بدون نیاز به آپلود کردن عکس یا هرچیزی فقط کافیه روی صفحه داشته باشیدش و از Copilot سوال کنید.

بحث‌هایی در مورد حریم‌خصوصی داره اما کاربرد گستردش باعث شده تا از جذابیتش کم نشه و بیشتر کاربرها به شدت منتظرش هستن.

هنوز مشخص نیست چه زمانی برای تمام کاربران فعال میشه اما حتما بهش نزدیک هستیم.

🔗 theverge
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
اتحادیه اروپا یه برنامه به اسم «قاره هوش مصنوعی» رو معرفی کرده که هدفش رقابت با آمریکا و چین هست، میخوان این عقب موندگیشون توی AI رو جبران کنن.

برای رسیدن به این هدف، اروپا می‌خواد «گیگافکتوری‌های هوش مصنوعی» راه بندازه. منظور از گیگافکتوری کارخونه‌های خیلی بزرگ هستن که توشون ۱۰۰ها هزار تراشه AI استفاده بشه.

البته تمام این تلاش‌ها تو شرایطی داره انجام میشه که آمریکا هم پروژه‌های مشابهی مثل Stargate رو داره پیش میبره و قراره تو چهار سال ۵۰۰ میلیارد دلار توی زیرساخت هوش‌مصنوعی در آمریکا سرمایه‌گذاری کنن، چین هم برنامه‌های زیادی داره ولی به نظر میرسه دسترسی کمش به تراشه‌های AI باعث شده مقداری عقب بمونه، هر چند شرکتی مثل دیپ‌سیک تونسته با وجود تحریم تراشه چیزی حدود ۵۰ هزار تراشه Nvidia بخره.

توی اروپا قبلا هم صحبت‌هایی بود برای اینکه ۲۰۰ میلیارد دلار تو ۵ سال آینده برای زیرساخت هوش‌مصنوعی سرمایه‌گذاری کنن، یه کمیسیون هم درست کردن که قراره قوانین دست و پاگیری که برای هوش‌مصنوعی گذاشتن رو حذف کنن. حتی خبرهایی میرسه که ممکنه قوانین GDPR هم کاهش داده بشه.

یه دلیل بزرگ در مورد چرایی حذف قوانین محدود کننده شرکت‌های AI توی اروپا و آمریکا اینه که شرکت‌های tech چینی بدون هر نوع محدودیتی دارن کار میکنن و این امتیاز بزرگی براشون بوده که توی این رقابت سریع پیشرفت کنن، کاری که اتحادیه اروپا دیر متوجه شد و باید دید چقدر میتونه توی حذف این قوانین با وجود مخالفین زیادش موفق باشه.

🔗 techmeme
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from یک برنامه نویس تنبل (  MΞ)
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 کارگاه هک و امنیت در افغانستان

@TheRaymondDev
Forwarded from Gopher Academy
🔵 عنوان مقاله
mus-go: MUS Format Serialization Library

🟢 خلاصه مقاله:

MUS که مخفف Minimal Unification Serialization است، یک فرمت سریالیزاسیون دودویی است که بر سادگی و کارآمدی طراحی شده است. این فرمت برای برنامه‌هایی مناسب است که به روشی سبک برای ذخیره‌سازی یا تبادل داده‌ها نیاز دارند. سادگی MUS باعث می‌شود که برای سیستم‌های با منابع محدود ایده‌آل باشد و خاصیت دودویی آن به فرآیندهای ترجمه داده‌ها سرعت می‌بخشد. این فرمت در اصول اصلی کاهش بار اضافی و حذف ساختارهای غیرضروری داده متمرکز است، که عملکرد را افزایش داده و پیاده‌سازی و نگهداری را آسان‌تر می‌کند.

🟣لینک مقاله:
https://golangweekly.com/link/167351/web


👑 @gopher_academy
اگه یه کدبیس قدیمی و لگسی PHP دارید میتونید از docudoodle برای نوشتن داکیومنت برای کدها استفاده کنید.
(من خودم تست نکردم)

https://github.com/genericmilk/docudoodle

@DevTwitter | <Saman/>
Forwarded from Syntax | سینتکس (alireza-fa)
Temporal

از اونجا شروع می‌شه که یه سری مهندس خفن، که تو شرکت‌های بزرگی مثل مایکروسافت و اوبر کار می‌کردن، فهمیدن مدیریت پردازش‌های پیچیده و توزیع‌شده (distributed systems) خیلی دردسر داره. مخصوصاً وقتی پای چیزایی مثل زمان‌بندی (scheduling)، ریتری (retry)، مانیتور کردن یا حتی برخورد با خطاها (failure handling) وسط میاد.

اینها میان به‌جای اینکه هر بار این مشکلات رو دوباره از اول حل کنن، تو اوبر یه چیزی به اسم Cadence طراحی کردن.

ا. Cadence یه ابزار خیلی قویه برای مدیریت workflow تو سیستم‌های توزیع‌شده. ولی خب، بعدها این بچه‌ها تصمیم گرفتن از اوبر بیان بیرون و یه ورژن بهتر از Cadence رو بسازن که همون Temporalهستش. Cadence با گولنگ توسعه دادن همچنین Temporal هم گولنگی هستش.

ا. Temporal دقیقاً همون ایده‌های Cadence رو گرفته با یه سری امکانات خفن‌تر و تجربه بهتر.

ا. Temporal چیه کاربرد هایی داره؟

ا. Temporal کمک می‌کنه جریان‌های کاری (workflow) پیچیده رو تو سیستم‌های توزیع‌شده مدیریت کنی. حالا یعنی چی؟ یعنی وقتی یه سری کار داری که تو زمان‌های مختلف باید انجام بشن یا یه سری عملیات که ممکنه به هر دلیلی (مثلاً قطع‌شدن سرور یا خطای شبکه) خراب بشه، دیگه لازم نیست خودت دست‌به‌کار بشی و اینا رو هندل کنی. Temporal همه اینارو خودش اوتوماتیک هندل می‌کنه.

برتری اصلی Temporal اینه که می‌تونی کدهای معمولی بنویسی، ولی اون خودش این کدها رو به‌شکلی مدیریت می‌کنه که انگار یه سیستم توزیع‌شده داری که همه چیش اوکیه. یعنی دیگه نگران ریتری، زمان‌بندی یا حفظ وضعیت (state) نباشی. خودش همه چیو هندل می‌کنه.

یه سناریوی واقعی: مدیریت رزرو با Temporal

فرض کن یه اپلیکیشن داری که توش کاربرها می‌تونن یه چیزی (مثلاً یه میز تو رستوران) رو رزرو کنن. حالا وقتی کسی یه رزرو انجام می‌ده، طبیعتاً نمی‌خوای اون میز برای همیشه قفل بمونه. مثلاً اگه کاربر تا ۱۵ دقیقه بعد رزروشو تأیید نکرد، باید خودبه‌خود اون رزرو آزاد شه.

خب، اینجا می‌تونیم با Temporal یه جریان کاری (workflow) خفن بسازیم. بیایم این‌جوری فکر کنیم:

1. وقتی کاربر یه رزرو انجام می‌ده، یه رویداد (event) ارسال می‌شه که می‌گه: «فلان میز رزرو شد».

2. حالا یه workflow تو Temporal تعریف می‌کنیم که بگه: «۱۵ دقیقه صبر کن. اگه تو این مدت کاربر رزرو رو تأیید نکرد، میز رو آزاد کن».

3. اگه کاربر قبل از ۱۵ دقیقه اومد و رزروشو تأیید کرد، workflow رو تموم می‌کنیم و اینبار یه تسک جدید تعریف میکنیم که مثلا یه ساعت قبل تایم رزرو نوتیف یادآوری بده و همینطور بر اساس رویداد های مختلف میتونیم جاب های جدید تعریف کنیم.

4. اگه نه، بعد از ۱۵ دقیقه Temporal خودش اون رزرو رو آزاد می‌کنه.

چرا Temporal اینجا معرکه‌ست؟

تو این مثال، اگه سرور وسط انجام Workflow خاموش بشه، یا حتی اگه شبکه قطع شه، Temporal خودش همه چیو دوباره ادامه می‌ده. یعنی دیگه لازم نیست خودت کدهای پیچیده برای مدیریت این شرایط بنویسی. این باعث می‌شه کارای تو خیلی راحت‌تر بشه و تمرکزت رو روی منطق اپلیکیشن بذاری، نه چیزای جانبی
همچنین به شما قابلیت مانیتورینگ خیلی خوبی رو میده

#temporal

@Syntax_fa
آیا پایتون همیشه کنده؟ 🐢

چیزی که همیشه از زبون همه ی برنامه نویسا می‌شنویم (مخصوصا جامعه محترم C#) اینه که پایتون خیلی کنده (نسبت به زبان های دیگه هرچند این مقایسه اشتباهه بعضی جاها)
خب اره، درسته پایتون کنده (البته در حالت pure)
توی این پست میخوام بگم که چرا کنده و چجوری میشه سریعش کرد؟

چرا پایتون کنده ؟ 🤓

همونجور که میدونید پایتون به صورت پیش‌فرض با CPython اجرا می‌شه، که یه مفسر (interpreter) برای پایتونه و با زبان C نوشته شده. CPython کد پایتون رو به بایت‌کد (bytecode) تبدیل می‌کنه و بعد اون رو تو یه ماشین مجازی (VM) اجرا می‌کنه. این فرایند باعث می‌شه پایتون نسبت به زبان‌های کامپایل‌شده مثل C یا Rust کندتر باشه، چون
تفسیر خط‌به‌خط انجام میده و به جای کامپایل مستقیم به کد ماشین، پایتون تو زمان اجرا تفسیر می‌شه.
GIL (Global Interpreter Lock) تو CPython، یه قفل سراسری هست که جلوی اجرای چند نخ (thread) همزمان رو می‌گیره و برای کارهای multithreading مشکل‌ساز می‌شه.
داینامیک تایپ بودن پایتون تایپ‌ها رو تو زمان اجرا چک می‌کنه، که یه کم سرعت رو پایین میاره.

ولی خبر خوب اینه که پایتون راه ها و ابزارهایی داره که می‌تونن این کندی رو برطرف کنن و پرفورمنس رو حسابی بالا ببرن

راه ها و ابزارهایی برای افزایش سرعت 📚

1️⃣ PyPy 🌟
‏Pypy یه مفسر جایگزین برای پایتونه که از JIT (Just-In-Time Compilation) استفاده می‌کنه.
و کارکردش اینجوریه که کد پایتون رو به جای تفسیر ساده، تو زمان اجرا به کد ماشین کامپایل می‌کنه. این یعنی برای حلقه‌ها و عملیات تکراری خیلی سریع‌تره.
مزیتشم اینه تو بعضی موارد تا ۷ برابر سریع‌تر از CPython عمل می‌کنه
و باید توجه داشت باشید برای کدهایی که با C extensionها (مثل NumPy) کار می‌کنن، کامل سازگار نیست.

2️⃣ Cython
‏Cython یه ابزار که کد پایتون رو به C تبدیل می‌کنه و بعد کامپایلش می‌کنه.
اینجوری کار میکنه که می‌تونی تایپ‌های استاتیک (مثل int یا float) به متغیرها‏ اضافه کنی تا سرعتش بیشتر بشه. بعد Cython این کد رو به C تبدیل می‌کنه و یه فایل باینری سریع تحویلت می‌ده.
و تا چندین برابر سریع‌تر از CPython می‌شه، به‌خصوص برای محاسبات سنگین.

3️⃣ Numba 🔥
‏Numba یه کامپایلر JIT برای پایتونه که با دکوریتور @jit کار می‌کنه.
کارکردش اینجوریه که کد پایتون رو تو زمان اجرا به کد ماشین تبدیل می‌کنه، بدون نیاز به تغییر زیاد تو کدنویسی.
برای حلقه‌ها و محاسبات عددی (مثل کار با آرایه‌ها) تا ۱۰۰ برابر سریع‌تر می‌شه

4️⃣ CPython با C Extensions 🛠️
می‌تونی بخش‌های کند پروژت یا جاهایی که به سرعت بالا نیاز داری رو با C بنویسی و به CPython وصل کنی.
اینجوریه که کد C رو به صورت ماژول می‌سازی و تو پایتون لودش می‌کنی.
و سرعت C رو با سادگی پایتون ترکیب می‌کنی. کتابخونه‌هایی مثل NumPy و Pandas از این روش استفاده می‌کنن.

و در اخر پایتون همیشه کند نیست 🙃

حقیقت اینه که پایتون به تنهایی برای خیلی از کارها به اندازه کافی سریعه، به‌خصوص تو پروژه‌هایی که I/O (مثل شبکه یا دیتابیس) گلوگاه اصلیه، نه CPU. ولی وقتی پای محاسبات سنگین وسط میاد، ابزارهایی مثل PyPy، Cython و Numba می‌تونن پرفورمنس رو چند برابر کنن. مثلاً:
یه حلقه ساده با Numba می‌تونه از ۵ ثانیه به ۰.۰۵ ثانیه برسه
‏PyPy تو برنامه‌های واقعی تا ۷ برابر سرعت رو بالا برده. 🐆

#️⃣ #python


🥷 CHANNEL | GROUP