Description of expected behavior and the observed behavior
Expected: plotting of drop off coordinates.
Observed: CUDARuntimeError: cudaErrorIllegalAddress: an illegal memory access was encountered when passing .Canvas().points() with cuDF or dask_cuDF DataFrame into transfer_functions.shade().
Complete, minimal, self-contained example code that reproduces the issue
import cudf
import datashader as ds
from colorcet import fire
from datashader import transfer_functions as tf
!wget 'https://gist.githubusercontent.com/gumdropsteve/37dc0a12c30fd52d81bdfcff915da04b/raw/9d5854dd9b9dd7c3f28865e308984bf9966376fe/sample_taxi.csv'
gdf = cudf.read_csv('sample_taxi.csv')
agg = ds.Canvas().points(gdf, 'dropoff_longitude', 'dropoff_latitude')
tf.set_background(tf.shade(agg, cmap=fire), "black")
--2020-02-17 22:05:56-- https://gist.githubusercontent.com/gumdropsteve/37dc0a12c30fd52d81bdfcff915da04b/raw/9d5854dd9b9dd7c3f28865e308984bf9966376fe/sample_taxi.csv
Resolving gist.githubusercontent.com (gist.githubusercontent.com)... 151.101.248.133
Connecting to gist.githubusercontent.com (gist.githubusercontent.com)|151.101.248.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3810 (3.7K) [text/plain]
Saving to: ‘sample_taxi.csv.3’
sample_taxi.csv.3 100%[===================>] 3.72K --.-KB/s in 0s
2020-02-17 22:05:56 (117 MB/s) - ‘sample_taxi.csv.3’ saved [3810/3810]
---------------------------------------------------------------------------
CUDARuntimeError Traceback (most recent call last)
in
10 agg = ds.Canvas().points(gdf, 'dropoff_longitude', 'dropoff_latitude')
11
---> 12 tf.set_background(tf.shade(agg, cmap=fire), "black")
~/.miniconda3/lib/python3.7/site-packages/datashader/transfer_functions/__init__.py in shade(agg, cmap, color_key, how, alpha, min_alpha, span, name)
445
446 if agg.ndim == 2:
--> 447 return _interpolate(agg, cmap, how, alpha, span, min_alpha, name)
448 elif agg.ndim == 3:
449 return _colorize(agg, color_key, how, min_alpha, name)
~/.miniconda3/lib/python3.7/site-packages/datashader/transfer_functions/__init__.py in _interpolate(agg, cmap, how, alpha, span, min_alpha, name)
266 with np.errstate(invalid="ignore", divide="ignore"):
267 # Transform data (log, eq_hist, etc.)
--> 268 data = interpolater(data, mask)
269
270 # Transform span
~/.miniconda3/lib/python3.7/site-packages/datashader/transfer_functions/__init__.py in eq_hist(data, mask, nbins)
164 data2 = data if mask is None else data[~mask]
165 if data2.dtype == bool or np.issubdtype(data2.dtype, np.integer):
--> 166 hist = np.bincount(data2.ravel())
167 bin_centers = np.arange(len(hist))
168 idx = int(np.nonzero(hist)[0][0])
<__array_function__ internals> in bincount(*args, **kwargs)
cupy/core/core.pyx in cupy.core.core.ndarray.__array_function__()
~/.miniconda3/lib/python3.7/site-packages/cupy/statistics/histogram.py in bincount(x, weights, minlength)
133 raise ValueError('minlength must be non-negative')
134
--> 135 size = int(cupy.max(x)) + 1
136 if minlength is not None:
137 size = max(size, minlength)
cupy/core/core.pyx in cupy.core.core.ndarray.__int__()
cupy/core/core.pyx in cupy.core.core.ndarray.get()
cupy/core/core.pyx in cupy.core.core.ndarray.get()
cupy/cuda/memory.pyx in cupy.cuda.memory.MemoryPointer.copy_to_host()
cupy/cuda/runtime.pyx in cupy.cuda.runtime.memcpy()
cupy/cuda/runtime.pyx in cupy.cuda.runtime.check_status()
CUDARuntimeError: cudaErrorIllegalAddress: an illegal memory access was encountered
Screenshots or screencasts of the bug in action
Additional info
Installed via pip after failing to install via conda
Click here to see Anaconda Error Report
# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/cli/install.py", line 265, in install
should_retry_solve=(_should_retry_unfrozen or repodata_fn != repodata_fns[-1]),
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 117, in solve_for_transaction
should_retry_solve)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 158, in solve_for_diff
force_remove, should_retry_solve)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 281, in solve_final_state
ssc = self._run_sat(ssc)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/common/io.py", line 88, in decorated
return f(*args, **kwds)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 808, in _run_sat
should_retry_solve=ssc.should_retry_solve
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/common/io.py", line 88, in decorated
return f(*args, **kwds)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/resolve.py", line 1316, in solve
raise UnsatisfiableError({})
conda.exceptions.UnsatisfiableError:
Did not find conflicting dependencies. If you would like to know which
packages conflict ensure that you have enabled unsatisfiable hints.
conda config --set unsatisfiable_hints True
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/exceptions.py", line 1079, in __call__
return func(*args, **kwargs)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/cli/main.py", line 84, in _main
exit_code = do_call(args, p)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/cli/conda_argparse.py", line 82, in do_call
return getattr(module, func_name)(args, parser)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/cli/main_install.py", line 20, in execute
install(args, parser, 'install')
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/cli/install.py", line 299, in install
should_retry_solve=(repodata_fn != repodata_fns[-1]),
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 117, in solve_for_transaction
should_retry_solve)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 158, in solve_for_diff
force_remove, should_retry_solve)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 281, in solve_final_state
ssc = self._run_sat(ssc)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/common/io.py", line 88, in decorated
return f(*args, **kwds)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/core/solve.py", line 808, in _run_sat
should_retry_solve=ssc.should_retry_solve
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/common/io.py", line 88, in decorated
return f(*args, **kwds)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/resolve.py", line 1318, in solve
self.find_conflicts(specs, specs_to_add, history_specs)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/resolve.py", line 347, in find_conflicts
bad_deps = self.build_conflict_map(specs, specs_to_add, history_specs)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/resolve.py", line 507, in build_conflict_map
root, search_node, dep_graph, num_occurances)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/resolve.py", line 369, in breadth_first_search_for_dep_graph
last_spec = MatchSpec.union((path[-1], target_paths[-1][-1]))[0]
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/models/match_spec.py", line 481, in union
return cls.merge(match_specs, union=True)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/models/match_spec.py", line 475, in merge
reduce(lambda x, y: x._merge(y, union), group) if len(group) > 1 else group[0]
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/models/match_spec.py", line 475, in
reduce(lambda x, y: x._merge(y, union), group) if len(group) > 1 else group[0]
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/models/match_spec.py", line 502, in _merge
final = this_component.union(that_component)
File "/home/winston@blazingdb.com/.miniconda3/lib/python3.7/site-packages/conda/models/match_spec.py", line 764, in union
return '|'.join(options)
TypeError: sequence item 0: expected str instance, Channel found
`$ /home/winston@blazingdb.com/.miniconda3/bin/conda install datashader`
environment variables:
CIO_TEST=
CONDA_DEFAULT_ENV=base
CONDA_EXE=/home/winston@blazingdb.com/.miniconda3/bin/conda
CONDA_PREFIX=/home/winston@blazingdb.com/.miniconda3
CONDA_PROMPT_MODIFIER=(base)
CONDA_PYTHON_EXE=/home/winston@blazingdb.com/.miniconda3/bin/python
CONDA_ROOT=/home/winston@blazingdb.com/.miniconda3
CONDA_SHLVL=1
JAVA_LD_LIBRARY_PATH=/home/winston@blazingdb.com/.miniconda3/jre/lib/amd64/server
PATH=/home/winston@blazingdb.com/.miniconda3/bin:/home/winston@blazingdb.co
m/.miniconda3/bin:/home/winston@blazingdb.com/.miniconda3/condabin:/us
r/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
REQUESTS_CA_BUNDLE=
SSL_CERT_FILE=
active environment : base
active env location : /home/winston@blazingdb.com/.miniconda3
shell level : 1
user config file : /home/winston@blazingdb.com/.condarc
populated config files :
conda version : 4.8.2
conda-build version : not installed
python version : 3.7.4.final.0
virtual packages : __cuda=10.2
__glibc=2.27
base environment : /home/winston@blazingdb.com/.miniconda3 (writable)
channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /home/winston@blazingdb.com/.miniconda3/pkgs
/home/winston@blazingdb.com/.conda/pkgs
envs directories : /home/winston@blazingdb.com/.miniconda3/envs
/home/winston@blazingdb.com/.conda/envs
platform : linux-64
user-agent : conda/4.8.2 requests/2.22.0 CPython/3.7.4 Linux/4.15.0-1058-aws ubuntu/18.04.3 glibc/2.27
UID:GID : 1027:1000
netrc file : None
offline mode : False
ALL software version info (this library, plus any other relevant software, e.g. bokeh, python, notebook, OS, browser, etc)
Bokeh: 1.4.0 BlazingSQL / cuDF: 0.12 Datashader: 0.10 Python: 3.7
Click here to see environment details
Description of expected behavior and the observed behavior
Expected: plotting of drop off coordinates. Observed:
CUDARuntimeError: cudaErrorIllegalAddress: an illegal memory access was encountered
when passing.Canvas().points()
with cuDF or dask_cuDF DataFrame intotransfer_functions.shade()
.Complete, minimal, self-contained example code that reproduces the issue
cuDF installed with BlazingSQL:
Stack traceback and/or browser JavaScript console output
Click here to see output of above Python script
Screenshots or screencasts of the bug in action
Additional info
Installed via
pip
after failing to install viaconda
Click here to see Anaconda Error Report