پیشنهاد فرادرس

آموزش بهینه سازی کد پایتون

دسته بندی ها: آموزش پایتون (Python) ، آموزش های لیندا (Lynda)

از طریق بهینه سازی کد Python می توانید اطمینان حاصل کنید که کد شما از منابع کمتری استفاده می کند و سریع تر از قبل عمل می کند. در این دوره پیشرفته، نکات و تکنیک هایی را می آموزیم که در بهینه سازی کد به شما کمک می کنند تا کارآیی بهتری به دست آورید. مربی Miki Tebeka ابزار کلی کار از جمله نحوه ی استفاده از ابزارهایی که Python برای اندازه گیری زمان ارائه می دهد و همچنین نحوه ی استفاده از line_profiler برای دریافت خط به خط اطلاعات پروفایل را توضیح می دهد. او همچنین چگونگی انتخاب ساختارهای مناسب داده، چگونگی سرعت بخشیدن به کد از طریق الگوریتم های تقریبی و نحوه ی استفاده از NumPy برای محاسبات عددی سریع تر را نشان می دهد. مربی این دوره را با بحث درباره روش اتمام فرآیند به پایان می رساند.

سرفصل ها:

  • قوانین بهینه سازی
  • اندازه گیری زمان
  • استفاده از line_profiler
  • انتخاب ساختار مناسب اطلاعات
  • استفاده از ماژول bisect
  • تخصیص حافظه در پایتون
  • ذخیره سازی، cheating و محاسبات موازی
  • NumPy، Numba و Cython
  • طراحی و بررسی کد
  • مقدمه:
  • بزار کار
  • همیشه ابتدا پروفایل
  • نکات کلی
  • اندازه گیری زمان
  • CPU profiling
  • line_profiler
  • ردیابی تخصیص حافظه
  • memory_profiler
  • انتخاب ساختار درست اطلاعات
  • نشانه گذاری Big-O
  • دو بخش کردن
  • ردیف
  • Heapq
  • فراتر از کتابخانه استاندارد
  • ترفندهای کار
  • ذخیره سازی نام های محلی
  • حذف فرمان های تابع
  • استفاده از  slot ها
  • Built-ins
  • تخصیص
  • ذخیره سازی
  • بررسی اجمالی
  • قبل از محاسبه
  • lru_cache
  • Joblib
  • Cheating
  • چه زمانی تقریب ها به اندازه کافی خوب هستند
  • نمونه های Cheating
  • محاسبات موازی
  • Amdahl's Law
  • موضوعات
  • فرآیندها
  • فراتر از Python
  • NumPy
  • Numba
  • Cython
  • PyPy
  • پسوند C
  • اضافه کردن بهینه سازی به فرآیند شما
  • چرا ما به پروسه نیاز داریم؟
  • طراحی و بررسی کد
  • معیارهای
  • نظارت و هشدار
  • نتیجه
  • مراحل بعدی
Optimizing Python Code Publisher:Lynda Author:Miki Tebeka Duration:2h 4m Level:Advanced

Learn tips and techniques that can help you optimize your Python code. Discover how to work with general tools of the trade, pick the right data structures, use caching, integrate performance in your process, and more.
Released: 3/20/2018
By optimizing your Python code, you can ensure that your code uses fewer resources and runs faster than it did previously. In this advanced course, explore tips and techniques that can help you optimize your code to make it more efficient. Instructor Miki Tebeka covers general tools of the trade, including how to leverage the tools Python provides for measuring time, and how to use line_profiler to get line-by-line profiling information. Miki also shares how to pick the right data structures, how approximation algorithms can speed up your code, and how to use NumPy for fast numeric computation. He wraps up the course with a discussion of how to integrate performance in your process.
Topics include:
Rules of optimization
Measuring time
Using line_profiler
Picking the right data structure
Using the bisect module
Memory allocation in Python
Caching, cheating, and parallel computing
NumPy, Numba, and Cython
Design and code reviews
Introduction
Welcome
54s
What you should know
1m 18s
1. Tools of the Trade
Always profile first
1m 33s
General tips
1m 40s
Measuring time
4m 55s
CPU profiling
6m 54s
line_profiler
5m 7s
Tracing memory allocations
3m 53s
memory_profiler
2m 23s
2. Picking the Right Data Structure
Big-O notation
2m 30s
bisect
3m 18s
deque
3m
heapq
3m 52s
Beyond the standard library
5m 15s
3. Tricks of the Trade
Local caching of names
3m 23s
Remove function calls
3m 16s
Using __slots__
3m 24s
Built-ins
3m 2s
Allocate
3m 6s
4. Caching
Overview
2m 46s
Pre-calculating
2m 37s
lru_cache
3m 3s
Joblib
3m 26s
5. Cheating
When approximation is good enough
1m 16s
Cheating example
4m 21s
6. Parallel Computing
Amdahl's Law
4m 13s
Threads
2m 56s
Processes
2m 59s
asyncio
5m 16s
7. Beyond Python
NumPy
3m 55s
Numba
3m 50s
Cython
4m 38s
PyPy
2m 5s
C extensions
3m 44s
8. Adding Optimization to Your Process
Why do we need a process?
1m 11s
Design and code reviews
2m 51s
Benchmarks
3m 15s
Monitoring and alerting
2m 41s
Conclusion
Next steps
1m 5s

پیشنهاد فرادرس

لینک های دانلود حجم فایل: 205.0MB همراه با زیرنویس انگلیسی Lynda Optimizing Python Code_git.ir.rar
captcha