и посмотреть медиа
Zen of Python - дзен
и посмотреть медиа
Полный гид по философии и практике Python в одном канале.
Полный гид по философии и практике Python в одном канале.
Zen of Python - канал, посвящённый философии и практикам Python. Уроки, скрипты, лучшие практики и материалы для освоения языка в Telegram.
Что происходит между np.add(a, b) и SIMD-циклом: разбор пути одного вызова np.add не функция Python, а объект C-типа numpy.ufunc с 22 сигнатурами в np.add.types. Файт Хеллер прослеживает, что происходит с вызовом для dd->d, двух массивов float64. 🔘 ufunc_generic_vectorcall и ufunc_generic_fastcall проверяют overrides и конвертируют аргументы; 🔘 promote_and_get_ufuncimpl и resolve_descriptors выбирают реализацию и dtype результата; 🔘 реестр встроенных ufunc порождается скриптом generate_umath.py в файл __umath_generated.c; для add bool-цикл переиспользует logical_or, а object-массивы уходят в PyNumber_Add; 🔘 циклы собираются в нескольких вариантах под наборы инструкций (X86_V2, X86_V3, NEON, ASIMD), и нужный выбирается при импорте. Какой вариант реально работает у вас, покажет numpy.lib.introspect.opt_func_info(func_name="add", signature="float64"). @zen_of_python
Открыть канал и посмотреть медиаOnly registered users can share their opinion.
Be the first to share your impression of this resource!
Telegram channelPremiumDozens of exclusive features, subscription benefits, and tips for using Telegram.
Free courses and strategy materialsSmartMoney.Concepts.