Scientific Programming
160 subscribers
158 photos
30 videos
138 files
446 links
Tutorials and applications from scientific programming

https://github.com/Ziaeemehr
Download Telegram
03_collective_communication.py
1.7 KB
ارسال دیکشنری و آرایه به صورت جمعی بین پروسس ها.
collective communications
#MPI #python
compute_pi_parallel.py
970 B
محاسبه عدد پی . برنامه موازی شده با mpi4py.
to run :
$ mpirun -n 4 python3 compute_pi_parallel.py 1000
compute_pi_serial.py
317 B
محاسبه عدد پی. برنامه غیر موازی.
موازی سازی با استفاده از MPI در پایتون و ترکیب کد سی پلاس پلاس.

🔆 یک راه برای بهینه تر کردن کدها استفاده از برنامه نویسی ترکیبی با سی پلاس پلاس است.
برای این کار از swig استفاده می کنیم.
#wrapping #mpi4py with #swig
☘️کد سی پلاس پلاس دست نمی خورد.
☘️ به یک فایل برای پل زدن بین پایتون و سی پلاس پلاس احتیاج داریم با پسوند i.
☘️ بعد از کامپایل کردن کد یک فایل با پسوند .so می سازیم که در فایل پایتون import می شود.
🌱 برای دریافت مثال به گیت هاب مراجعه کنید.
🌱 برای مثال های بیشتر در مورد استفاده از swig هم می توانید به این آدرس مراجعه کنید.


helloworld/
- helloworld.hpp
- helloworld.i
- runme.py
- build.sh
🔆 اگر فکر می کنید که کدهای پایتونتون کند هست احتمالن این آموزش براتون مفیده. ویدیو مقدمه ای هست بر cython که با یک مثال ساده تا صد برابر زمان اجرا کاهش پیدا می کند.
برای استفاده از cython نیازی به دونستن برنامه نویسی به زبان C یا ++C ندارید.

اینجا بیشتر بخوانید و ببینید.

#Cython is an optimising static compiler for both the #Python programming language and the extended Cython programming language (based on #Pyrex). It makes writing #C extensions for Python as easy as Python itself.
Forwarded from DLeX: AI Python (Farzad 🦅)
Springer Ebooks.pdf.pdf
693.5 KB
انتشارات اشپرینگر لیستی از کتابهای خود را رایگان برای دانلود گذاشته است.
جلوی هر کتاب لینک وجود دارد. روی آن کلیک کنید و دانلود کنید. در استفاده از آن به هیچ وجه تردید نکنید، خیلی از آنها بسبار گران هستند و در این ایام خاص رایگان است.

#کتاب
#book

❇️ @AI_Python
🗣 @AI_Python_arXiv
✴️ @AI_Python_EN
2019_Book_ABeginnersGuideToPython3Progra.pdf
29.1 MB
A Beginners Guide to Python 3 Programming
#python3
#book
2019_Book_AdvancedGuideToPython3Programm.pdf
22.9 MB
Advanced Guide to Python 3 Programming
#python3
#book
🔆 یک سری مثال برای کاربرد آرایه های numpy در cython شامل

- loop over numpy array
- passing numpy array as argument
- indexing over numpy array (better optimization)
- disabling bounds checking (bounds of indices)
- passing numpy array and returnding numpy array

https://github.com/Ziaeemehr/cython/tree/master/examples/example_5_numpy

using numpy array in #Cython
#Mixed_programming
using numpy array in #Cython
#Mixed_programming
مرجع مثال ها همراه با توضیحات بیشتر در فایل Readme
هر مثال قرار دارد.
بسته به هر مثال سرعت اجرا تا ۳۰۰ برابر نسبت به کد پایتون سریع تر شده است.
تا 1000x speedup هم گاهی معمول هست.
🔆 برای دادن python list به عنوان آرگومان به تابع و برگرداندن لیست از تابع cython در اینجا توضیح داده شده است.
مثال ها به ساده ترین شکل ممکن هست و تنها هدف آموزشی دارد.
1️⃣ هر مثال شامل یک فایل با پسوند pyx است که تابع cython در آن نوشته می شود.
2️⃣ فایل setup.py که برای ساخت تابع کتابخانه با پسوند so به کار میرود. در ویندوز فایل pyd ساخته می شود.
3️⃣ فایل run.py که برای فراخوانی و اجرای کد استفاده می شود.
4️⃣ فایل makefile هم برای اجرای فایل setup و ساخت ماژول به کار می رود.
example.pdf
21.8 KB
می توان cython را در jupyter notebook به صورت interactive هم استفاده کرد و نیاز به کامپایل کردن جداگانه ندارد. همه مراحل کامپایل در پشت صحنه انجام می شود.
github