Skip to content

Instantly share code, notes, and snippets.

View guilhermeleobas's full-sized avatar

Guilherme Leobas guilhermeleobas

View GitHub Profile
============================================================================================================================== FAILURES ===============================================================================================================================
___________________________________________________________________________________________________ TestControlFlowTraced.test_cond_vmap_multiple_args_with_closure ___________________________________________________________________________________________________
test/functorch/test_control_flow.py:1714: in test_cond_vmap_multiple_args_with_closure
res = torch.vmap(fn)(a, b)
torch/_functorch/apis.py:188: in wrapped
return vmap_impl(func, in_dims, out_dims, randomness, chunk_size, *args, **kwargs)
torch/_functorch/vmap.py:287: in vmap_impl
return wrapper()
torch/_dynamo/eval_frame.py:501: in _fn
return fn(*args, **kwargs)
1. git clone https://github.com/numba/numba.git
2. Baixar e instalar o Miniconda:
https://docs.conda.io/en/latest/miniconda.html
3. (opcional) Instalar o Mamba
conda install mamba -c conda-forge
4. Criar um env com o Numba
mamba create -n numba python=3.9 llvmlite=0.40 numpy cffi pytest -c numba/label/dev
5. Dar build no Numba
conda activate numba
python setup.py build_ext --inplace
python setup.py build_ext --inplace -j10
/Users/guilhermeleobas/git/numba/setup.py:143: DeprecationWarning:
`numpy.distutils` is deprecated since NumPy 1.23.0, as a result
of the deprecation of `distutils` itself. It will be removed for
Python >= 3.12. For older Python versions it will remain present.
It is recommended to use `setuptools < 60.0` for those Python versions.
For more details, see:
https://numpy.org/devdocs/reference/distutils_status_migration.html
#### without DCE
(Pdb++) func_ir.dump()
label 0:
x = arg(0, name=x) ['x']
m = arg(1, name=m) ['m']
y = arg(2, name=y) ['y']
$2load_global.0 = global(len: <built-in function len>) ['$2load_global.0']
sz = call $2load_global.0(x, func=$2load_global.0, args=[Var(x, test_omnisci_column_basic.py:832)], kws=(), vararg=None, target=None) ['$2load_global.0', 'sz', 'x']
$10load_global.3 = global(range: <class 'range'>) ['$10load_global.3']
#define BOOST_STRONG_TYPEDEF(T, D) \
struct TextEncodingDict { \
T t; \
D(const T t_) : t(t_){}; \
D(){}; \
D(const D& t_) : t(t_.t) {} \
D& operator=(const D& rhs) { \
t = rhs.t; \
return *this; \
} \
// clang-format off
/*
UDTF: ct_binding_template__cpu_1(Cursor<TextEncodingDict>) -> Column<TextEncodingDict:input_id=0>
UDTF: ct_binding_template__cpu_2(Cursor<int>) -> Column<int>
*/
// clang-format on
template<typename T>
int32_t
ct_binding_template(const Column<T>& input,
Column<T>& out){
from numba import njit
from numba.core import types, errors
from numba.core.types import Array, float64, boolean, Omitted, int64
from numba.np.numpy_support import type_can_asarray
from numba.core.extending import overload, register_jitable
import numpy as np
import pytest
import os
assert 'IMPL' in os.environ
guilhermeleobas at Guilhermes-MacBook-Pro in ~/documents/github/pandas (master)
$ DYLD_PRINT_LIBRARIES=1 NUMBA_TRACE=1 lldb -- python3 -v -m pytest -s -v pandas/tests/window/test_numba.py::TestTableMethod::test_table_method_rolling_methods
dyld: loaded: <646A3C42-13A1-3A46-B6C7-BD7CD8B13826> /usr/bin/lldb
dyld: loaded: <0C2EE99D-D03E-35AD-AAE1-92121BC71D02> /usr/lib/libxcselect.dylib
dyld: loaded: <B6FDA8A9-3D2B-3BD5-B5B0-57D311C0FF3D> /usr/lib/libSystem.B.dylib
dyld: loaded: <A5ECC751-A681-30D8-B33C-D192C15D25C8> /usr/lib/system/libcache.dylib
dyld: loaded: <C321A74A-AA91-3785-BEBF-BEDC6975026C> /usr/lib/system/libcommonCrypto.dylib
dyld: loaded: <652A6012-7E5C-3F4F-9438-86BC094526F3> /usr/lib/system/libcompiler_rt.dylib
dyld: loaded: <40113A69-A81C-3397-ADC6-1D16B9A22C3E> /usr/lib/system/libcopyfile.dylib
dyld: loaded: <5E4B0E50-24DD-3E04-9374-EDA9FFD6257B> /usr/lib/system/libcorecrypto.dylib
from numba.core.typing import typeof, templates
from numba.core import extending, types
class ConstFunction:
@classmethod
def fromobject(cls, func):
name = getattr(func, '__name__', str(func))
return cls(func, name)
from numba import njit, extending, types
from numba.types import int64, double
from numba.core import funcdesc, sigutils
from llvmlite import ir
class External:
def __init__(self, symbol, signatures):
self.symbol = symbol