اپلیکیشن اندرویدی فلشکارت آموزشی تحلیل عملکرد (Performance Profiling) در پایتون
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره تحلیل عملکرد (Performance Profiling) در پایتون
موضوع کلی: برنامه نویسی
موضوع میانی: محاسبات سطح بالا (High-Performance Computing)
📋 سرفصلهای دوره
- 1. مقدمه ای بر تحلیل عملکرد
- 2. اهمیت تحلیل عملکرد در محاسبات سطح بالا
- 3. مفاهیم پایه محاسبات سطح بالا
- 4. معماری کامپیوتر و تأثیر آن بر عملکرد
- 5. حافظه پنهان (Cache) و سلسله مراتب حافظه
- 6. پردازش موازی و همزمان
- 7. مقدمه ای بر زبان پایتون برای HPC
- 8. چرا پایتون برای HPC؟
- 9. محدودیت های عملکرد پایتون
- 10. چالش های تحلیل عملکرد در پایتون
- 11. انواع گلوگاه های عملکردی
- 12. شناسایی گلوگاه های CPU
- 13. شناسایی گلوگاه های حافظه
- 14. شناسایی گلوگاه های I/O
- 15. شناسایی گلوگاه های شبکه
- 16. ابزارهای داخلی پایتون برای تحلیل عملکرد
- 17. دستور time
- 18. تابع timeit
- 19. ماژول cProfile
- 20. ماژول profile
- 21. روش های زمان بندی دقیق
- 22. اندازه گیری زمان اجرا توابع
- 23. اندازه گیری زمان اجرای بلوک های کد
- 24. مقایسه عملکرد الگوریتم های مختلف
- 25. بررسی تاثیر ساختارهای داده بر عملکرد
- 26. بررسی تاثیر توابع و متدهای کتابخانه ای
- 27. تحلیل کد با استفاده از cProfile
- 28. استفاده از pstats برای تحلیل خروجی cProfile
- 29. فیلتر کردن نتایج cProfile
- 30. مرتب سازی نتایج cProfile
- 31. نمایش بصری نتایج cProfile
- 32. ابزارهای خارجی برای تحلیل عملکرد پایتون
- 33. line_profiler
- 34. memory_profiler
- 35. guppy/heapy
- 36. objgraph
- 37. py-spy
- 38. perf
- 39. gperftools
- 40. Valgrind
- 41. Intel VTune Amplifier
- 42. NVIDIA Nsight Systems
- 43. AMD uProf
- 44. استفاده از ابزارهای مبتنی بر خط فرمان
- 45. استفاده از ابزارهای گرافیکی
- 46. نکات کلیدی در تحلیل عملکرد کد پایتون
- 47. شناسایی فراخوانی های پرهزینه
- 48. شناسایی توابع تکراری
- 49. شناسایی استفاده بیش از حد از حافظه
- 50. تحلیل توابع در سطح خط (Line Profiling)
- 51. اندازه گیری زمان اجرای هر خط کد
- 52. شناسایی خطوطی که زمان زیادی می برند
- 53. بهینه سازی خطوط پرهزینه
- 54. تحلیل حافظه (Memory Profiling)
- 55. شناسایی تخصیص حافظه ناخواسته
- 56. اندازه گیری مصرف حافظه توسط توابع
- 57. شناسایی اشیاء بزرگ و پرهزینه
- 58. جلوگیری از نشت حافظه (Memory Leaks)
- 59. استفاده از الگوریتم های کارآمدتر
- 60. انتخاب ساختارهای داده مناسب
- 61. کاهش فراخوانی های توابع
- 62. استفاده از روش های محاسبه از پیش
- 63. اجتناب از محاسبات تکراری
- 64. استفاده از تکنیک های Vectorization
- 65. مقدمه ای بر NumPy برای Vectorization
- 66. بهینه سازی عملیات با NumPy
- 67. استفاده از توابع تخصصی NumPy
- 68. کار با آرایه های بزرگ NumPy
- 69. استفاده از Cython برای افزایش سرعت
- 70. مقدمه ای بر Cython
- 71. تبدیل کد پایتون به Cython
- 72. کامپایل کد Cython
- 73. استفاده از type hints در Cython
- 74. بهینه سازی حلقه ها در Cython
- 75. بهینه سازی دسترسی به حافظه در Cython
- 76. استفاده از Numba برای کامپایل Just-In-Time (JIT)
- 77. مقدمه ای بر Numba
- 78. دکوراتور @jit
- 79. دکوراتور @njit
- 80. دکوراتور @vectorize
- 81. استفاده از Numba برای توابع ریاضی
- 82. بهینه سازی حلقه ها با Numba
- 83. سازگاری Numba با NumPy
- 84. موازی سازی در پایتون
- 85. مقدمه ای بر Threading
- 86. تفاوت Threading و Multiprocessing
- 87. موازی سازی با ماژول multiprocessing
- 88. استفاده از Pool در multiprocessing
- 89. استفاده از concurrent.futures
- 90. استفاده از کتابخانه Joblib
- 91. parallelize کردن حلقه ها
- 92. موازی سازی عملیات I/O
- 93. کار با داده های حجیم
- 94. بهینه سازی خواندن و نوشتن فایل
- 95. استفاده از فرمت های باینری (HDF5, Parquet)
- 96. فشرده سازی داده ها
- 97. تحلیل عملکرد I/O در پایتون
- 98. استفاده از ابزارهای I/O Profiling
- 99. بهینه سازی دسترسی به پایگاه داده
- 100. کار با داده های توزیع شده
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.