Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] CudaIllegalAccessException calling slice from map_partitions #4850

Closed
kevingerman opened this issue Apr 8, 2020 · 12 comments · Fixed by #4861
Closed

[BUG] CudaIllegalAccessException calling slice from map_partitions #4850

kevingerman opened this issue Apr 8, 2020 · 12 comments · Fixed by #4861
Assignees
Labels
bug Something isn't working libcudf Affects libcudf (C++/CUDA) code. strings strings issues (C++ and Python)

Comments

@kevingerman
Copy link

kevingerman commented Apr 8, 2020

Describe the bug
Code is the best description. This worked in 0.13, but stopped working as of 2020/03/24 build.

Steps/Code to reproduce bug

import dask_cudf
import dask
import pandas as pd

#create a dataframe and pull into dask_cudf. Original issue found in df from read_csv
pdf=pd.DataFrame([ ( i, str(d) ) for i,d in  enumerate(range(20150101, 20150130))], columns=['id','date'])
ddf=dask_cudf.from_dask_dataframe( dask.dataframe.from_pandas( pdf, npartitions=2 ))

def get_date_parts( df ):
    df['date'].astype('str').str.slice(4, 6).astype('int')
    return df

ddf.map_partitions( get_date_parts )

Expected behavior

Returns a dask dataframe, not raises an exception.

Environment overview (please complete the following information)

  • Environment location: Reproduced on both bare-metal and in Docker, occurs for docker builds with Cuda 10.,0
  • Above reproduction installed with conda install on DGX as follows
channels:
- rapidsai-nightly
- rapidsai
- conda-forge
- nvidia
- defaults
dependencies:
- python=3.7
- cudf=0.14*
- dask-cuda=0.14*
- dask-cudf=0.14*

Environment details
In comments

Additional context
The last known working conda environment listing json follows as comment

@kevingerman kevingerman added Needs Triage Need team to review and classify bug Something isn't working labels Apr 8, 2020
@kevingerman
Copy link
Author

kevingerman commented Apr 8, 2020

Click here to see environment details
 **git***
 commit d276b178da98a7a6e3411efdebc76d46b47d6a1f (HEAD -> results)
 Author: Kevin German <[email protected]>
 Date:   Mon Mar 23 08:46:46 2020 -0700
 
 tracking results
 **git submodules***
 
 ***OS Information***
 DGX_NAME="DGX Server"
 DGX_PRETTY_NAME="NVIDIA DGX Server"
 DGX_SWBUILD_DATE="2018-01-10"
 DGX_SWBUILD_VERSION="3.1.4"
 DGX_COMMIT_ID="660a5f359205297159909ff1631b15af9ecc3aef"
 DGX_SERIAL_NUMBER=QTFCOU6460056-R1
 
 DGX_OTA_VERSION="3.1.4"
 DGX_OTA_DATE="Fri Feb  9 12:13:38 PST 2018"
 
 DGX_OTA_VERSION="3.1.7"
 DGX_OTA_DATE="Wed Jun 27 11:44:16 PDT 2018"
 DISTRIB_ID=Ubuntu
 DISTRIB_RELEASE=16.04
 DISTRIB_CODENAME=xenial
 DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS"
 NAME="Ubuntu"
 VERSION="16.04.6 LTS (Xenial Xerus)"
 ID=ubuntu
 ID_LIKE=debian
 PRETTY_NAME="Ubuntu 16.04.6 LTS"
 VERSION_ID="16.04"
 HOME_URL="http://www.ubuntu.com/"
 SUPPORT_URL="http://help.ubuntu.com/"
 BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
 VERSION_CODENAME=xenial
 UBUNTU_CODENAME=xenial
 Linux dgx01 4.4.0-142-generic #168-Ubuntu SMP Wed Jan 16 21:00:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
 
 ***GPU Information***
 Wed Apr  8 09:19:24 2020
 +-----------------------------------------------------------------------------+
 | NVIDIA-SMI 440.33.01    Driver Version: 440.33.01    CUDA Version: 10.2     |
 |-------------------------------+----------------------+----------------------+
 | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
 | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
 |===============================+======================+======================|
 |   0  Tesla P100-SXM2...  On   | 00000000:06:00.0 Off |                    0 |
 | N/A   32C    P0    33W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   1  Tesla P100-SXM2...  On   | 00000000:07:00.0 Off |                    0 |
 | N/A   33C    P0    34W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   2  Tesla P100-SXM2...  On   | 00000000:0A:00.0 Off |                    0 |
 | N/A   30C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   3  Tesla P100-SXM2...  On   | 00000000:0B:00.0 Off |                    0 |
 | N/A   31C    P0    31W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   4  Tesla P100-SXM2...  On   | 00000000:85:00.0 Off |                    0 |
 | N/A   32C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   5  Tesla P100-SXM2...  On   | 00000000:86:00.0 Off |                    0 |
 | N/A   30C    P0    34W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   6  Tesla P100-SXM2...  On   | 00000000:89:00.0 Off |                    0 |
 | N/A   31C    P0    34W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 |   7  Tesla P100-SXM2...  On   | 00000000:8A:00.0 Off |                    0 |
 | N/A   32C    P0    32W / 300W |      0MiB / 16280MiB |      0%      Default |
 +-------------------------------+----------------------+----------------------+
 
 +-----------------------------------------------------------------------------+
 | Processes:                                                       GPU Memory |
 |  GPU       PID   Type   Process name                             Usage      |
 |=============================================================================|
 |  No running processes found                                                 |
 +-----------------------------------------------------------------------------+
 
 ***CPU***
 Architecture:          x86_64
 CPU op-mode(s):        32-bit, 64-bit
 Byte Order:            Little Endian
 CPU(s):                80
 On-line CPU(s) list:   0-79
 Thread(s) per core:    2
 Core(s) per socket:    20
 Socket(s):             2
 NUMA node(s):          2
 Vendor ID:             GenuineIntel
 CPU family:            6
 Model:                 79
 Model name:            Intel(R) Xeon(R) CPU E5-2698 v4 @ 2.20GHz
 Stepping:              1
 CPU MHz:               2706.945
 CPU max MHz:           3600.0000
 CPU min MHz:           1200.0000
 BogoMIPS:              4391.50
 Virtualization:        VT-x
 L1d cache:             32K
 L1i cache:             32K
 L2 cache:              256K
 L3 cache:              51200K
 NUMA node0 CPU(s):     0-19,40-59
 NUMA node1 CPU(s):     20-39,60-79
 Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb invpcid_single intel_pt ssbd ibrs ibpb stibp kaiser tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts flush_l1d
 
 ***CMake***
 /usr/local/bin/cmake
 cmake version 3.12.0
 
 CMake suite maintained and supported by Kitware (kitware.com/cmake).
 
 ***g++***
 /usr/bin/g++
 g++ (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609
 Copyright (C) 2015 Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
 
 ***nvcc***
 
 ***Python***
 /raid/kgerman/miniconda/envs/wtf/bin/python
 Python 3.7.6
 
 ***Environment Variables***
 PATH                            : /raid/kgerman/miniconda/envs/wtf/bin:/home/nfs/kgerman/bin:/home/nfs/kgerman/.local/bin:/home/nfs/kgerman/bin:/home/nfs/kgerman/.local/bin:/raid/kgerman/miniconda/bin:/raid/kgerman/miniconda/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
 LD_LIBRARY_PATH                 :
 NUMBAPRO_NVVM                   :
 NUMBAPRO_LIBDEVICE              :
 CONDA_PREFIX                    : /raid/kgerman/miniconda/envs/wtf
 PYTHON_PATH                     :
 
 ***conda packages***
 /raid/kgerman/miniconda/bin/conda
 # packages in environment at /raid/kgerman/miniconda/envs/wtf:
 #
 # Name                    Version                   Build  Channel
 _libgcc_mutex             0.1                 conda_forge    conda-forge
 _openmp_mutex             4.5                      1_llvm    conda-forge
 arrow-cpp                 0.15.0           py37h090bef1_2    conda-forge
 bokeh                     2.0.1            py37hc8dfbb8_0    conda-forge
 boost-cpp                 1.70.0               h8e57a91_2    conda-forge
 brotli                    1.0.7             he1b5a44_1001    conda-forge
 bzip2                     1.0.8                h516909a_2    conda-forge
 c-ares                    1.15.0            h516909a_1001    conda-forge
 ca-certificates           2020.4.5.1           hecc5488_0    conda-forge
 certifi                   2020.4.5.1       py37hc8dfbb8_0    conda-forge
 click                     7.1.1              pyh8c360ce_0    conda-forge
 cloudpickle               1.3.0                      py_0    conda-forge
 cudatoolkit               10.1.243             h6bb024c_0    nvidia
 cudf                      0.14.0a200408         py37_2726    rapidsai-nightly
 cudnn                     7.6.0                cuda10.1_0    nvidia
 cupy                      7.3.0            py37h0632833_0    conda-forge
 cytoolz                   0.10.1           py37h516909a_0    conda-forge
 dask                      2.14.0                     py_0    conda-forge
 dask-core                 2.14.0                     py_0    conda-forge
 dask-cuda                 0.14.0a200408           py37_40    rapidsai-nightly
 dask-cudf                 0.14.0a200408         py37_2726    rapidsai-nightly
 distributed               2.14.0           py37hc8dfbb8_0    conda-forge
 dlpack                    0.2                  he1b5a44_1    conda-forge
 double-conversion         3.1.5                he1b5a44_2    conda-forge
 fastavro                  0.23.1           py37h8f50634_0    conda-forge
 fastrlock                 0.4             py37h3340039_1001    conda-forge
 freetype                  2.10.1               he06d7ca_0    conda-forge
 fsspec                    0.7.2                      py_0    conda-forge
 gflags                    2.2.2             he1b5a44_1002    conda-forge
 glog                      0.4.0                he1b5a44_1    conda-forge
 grpc-cpp                  1.23.0               h18db393_0    conda-forge
 heapdict                  1.0.1                      py_0    conda-forge
 icu                       64.2                 he1b5a44_1    conda-forge
 jinja2                    2.11.1                     py_0    conda-forge
 jpeg                      9c                h14c3975_1001    conda-forge
 ld_impl_linux-64          2.34                 h53a641e_0    conda-forge
 libblas                   3.8.0               16_openblas    conda-forge
 libcblas                  3.8.0               16_openblas    conda-forge
 libcudf                   0.14.0a200408     cuda10.1_2726    rapidsai-nightly
 libevent                  2.1.10               h72c5cf5_0    conda-forge
 libffi                    3.2.1             he1b5a44_1007    conda-forge
 libgcc-ng                 9.2.0                h24d8f2e_2    conda-forge
 libgfortran-ng            7.3.0                hdf63c60_5    conda-forge
 liblapack                 3.8.0               16_openblas    conda-forge
 libllvm8                  8.0.1                hc9558a2_0    conda-forge
 libnvstrings              0.14.0a200408     cuda10.1_2726    rapidsai-nightly
 libopenblas               0.3.9                h5ec1e0e_0    conda-forge
 libpng                    1.6.37               hed695b0_1    conda-forge
 libprotobuf               3.8.0                h8b12597_0    conda-forge
 librmm                    0.14.0a200408      cuda10.1_252    rapidsai-nightly
 libstdcxx-ng              9.2.0                hdf63c60_2    conda-forge
 libtiff                   4.1.0                hfc65ed5_0    conda-forge
 llvm-openmp               9.0.1                hc9558a2_2    conda-forge
 llvmlite                  0.31.0           py37h5202443_1    conda-forge
 locket                    0.2.0                      py_2    conda-forge
 lz4-c                     1.8.3             he1b5a44_1001    conda-forge
 markupsafe                1.1.1            py37h8f50634_1    conda-forge
 msgpack-python            1.0.0            py37h99015e2_1    conda-forge
 nccl                      2.6.4.1              h51cf6c1_0    conda-forge
 ncurses                   6.1               hf484d3e_1002    conda-forge
 numba                     0.48.0           py37hb3f55d8_0    conda-forge
 numpy                     1.18.1           py37h8960a57_1    conda-forge
 nvstrings                 0.14.0a200408         py37_2726    rapidsai-nightly
 olefile                   0.46                       py_0    conda-forge
 openssl                   1.1.1f               h516909a_0    conda-forge
 packaging                 20.1                       py_0    conda-forge
 pandas                    0.25.3           py37hb3f55d8_0    conda-forge
 parquet-cpp               1.5.1                         2    conda-forge
 partd                     1.1.0                      py_0    conda-forge
 pillow                    7.1.1            py37h718be6c_0    conda-forge
 pip                       20.0.2                     py_2    conda-forge
 psutil                    5.7.0            py37h8f50634_1    conda-forge
 pyarrow                   0.15.0           py37h8b68381_1    conda-forge
 pynvml                    8.0.4                      py_0    conda-forge
 pyparsing                 2.4.7              pyh9f0ad1d_0    conda-forge
 python                    3.7.6           h8356626_5_cpython    conda-forge
 python-dateutil           2.8.1                      py_0    conda-forge
 python_abi                3.7                     1_cp37m    conda-forge
 pytz                      2019.3                     py_0    conda-forge
 pyyaml                    5.3.1            py37h8f50634_0    conda-forge
 re2                       2020.04.01           he1b5a44_0    conda-forge
 readline                  8.0                  hf8c457e_0    conda-forge
 rmm                       0.14.0a200408          py37_252    rapidsai-nightly
 setuptools                46.1.3           py37hc8dfbb8_0    conda-forge
 six                       1.14.0                     py_1    conda-forge
 snappy                    1.1.8                he1b5a44_1    conda-forge
 sortedcontainers          2.1.0                      py_0    conda-forge
 sqlite                    3.30.1               hcee41ef_0    conda-forge
 tblib                     1.6.0                      py_0    conda-forge
 thrift-cpp                0.12.0            hf3afdfd_1004    conda-forge
 tk                        8.6.10               hed695b0_0    conda-forge
 toolz                     0.10.0                     py_0    conda-forge
 tornado                   6.0.4            py37h8f50634_1    conda-forge
 typing_extensions         3.7.4.1          py37hc8dfbb8_3    conda-forge
 uriparser                 0.9.3                he1b5a44_1    conda-forge
 wheel                     0.34.2                     py_1    conda-forge
 xz                        5.2.5                h516909a_0    conda-forge
 yaml                      0.2.2                h516909a_1    conda-forge
 zict                      2.0.0                      py_0    conda-forge
 zlib                      1.2.11            h516909a_1006    conda-forge
 zstd                      1.4.3                h3b9ef0a_0    conda-forge

@kevingerman
Copy link
Author

kevingerman commented Apr 8, 2020

Click here to see conda list json for last successful execution
[
  {
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 0,
  "build_string": "conda_forge",
  "channel": "conda-forge",
  "dist_name": "_libgcc_mutex-0.1-conda_forge",
  "name": "_libgcc_mutex",
  "platform": "linux-64",
  "version": "0.1"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 1,
  "build_string": "1_llvm",
  "channel": "conda-forge",
  "dist_name": "_openmp_mutex-4.5-1_llvm",
  "name": "_openmp_mutex",
  "platform": "linux-64",
  "version": "4.5"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 2,
  "build_string": "py37h090bef1_2",
  "channel": "conda-forge",
  "dist_name": "arrow-cpp-0.15.0-py37h090bef1_2",
  "name": "arrow-cpp",
  "platform": "linux-64",
  "version": "0.15.0"
},
{
  "base_url": "https://conda.anaconda.org/pypi",
  "build_number": 0,
  "build_string": "pypi_0",
  "channel": "pypi",
  "dist_name": "backcall-0.1.0-pypi_0",
  "name": "backcall",
  "platform": "pypi",
  "version": "0.1.0"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 0,
  "build_string": "py37hc8dfbb8_0",
  "channel": "conda-forge",
  "dist_name": "bokeh-2.0.0-py37hc8dfbb8_0",
  "name": "bokeh",
  "platform": "linux-64",
  "version": "2.0.0"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 2,
  "build_string": "h8e57a91_2",
  "channel": "conda-forge",
  "dist_name": "boost-cpp-1.70.0-h8e57a91_2",
  "name": "boost-cpp",
  "platform": "linux-64",
  "version": "1.70.0"
},
{
  "base_url": "https://conda.anaconda.org/pypi",
  "build_number": 0,
  "build_string": "pypi_0",
  "channel": "pypi",
  "dist_name": "botocore-1.15.32-pypi_0",
  "name": "botocore",
  "platform": "pypi",
  "version": "1.15.32"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 1001,
  "build_string": "he1b5a44_1001",
  "channel": "conda-forge",
  "dist_name": "brotli-1.0.7-he1b5a44_1001",
  "name": "brotli",
  "platform": "linux-64",
  "version": "1.0.7"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 2,
  "build_string": "h516909a_2",
  "channel": "conda-forge",
  "dist_name": "bzip2-1.0.8-h516909a_2",
  "name": "bzip2",
  "platform": "linux-64",
  "version": "1.0.8"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 1001,
  "build_string": "h516909a_1001",
  "channel": "conda-forge",
  "dist_name": "c-ares-1.15.0-h516909a_1001",
  "name": "c-ares",
  "platform": "linux-64",
  "version": "1.15.0"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 0,
  "build_string": "hecc5488_0",
  "channel": "conda-forge",
  "dist_name": "ca-certificates-2019.11.28-hecc5488_0",
  "name": "ca-certificates",
  "platform": "linux-64",
  "version": "2019.11.28"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 1003,
  "build_string": "hcf35c78_1003",
  "channel": "conda-forge",
  "dist_name": "cairo-1.16.0-hcf35c78_1003",
  "name": "cairo",
  "platform": "linux-64",
  "version": "1.16.0"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 1,
  "build_string": "py37hc8dfbb8_1",
  "channel": "conda-forge",
  "dist_name": "certifi-2019.11.28-py37hc8dfbb8_1",
  "name": "certifi",
  "platform": "linux-64",
  "version": "2019.11.28"
},
{
  "base_url": "https://conda.anaconda.org/conda-forge",
  "build_number": 2,
  "build_string": "hb60a0a2_2",
  "channel": "conda-forge",
  "dist_name": "cfitsio-3.470-hb60a0a2_2",
  "name": "cfitsio",
  "platform": "linux-64",
  "version": "3.470"
},
{
  "base_url": "https://conda.anaconda.org/pypi",
  "build_number": 0,
  "build_string": "pypi_0",
  "channel": "pypi",
  "dist_name": "chardet-3.0.4-pypi_0",
  "name": "chardet",
  "platform": "pypi",
  "version": "3.0.4"

},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "pyh8c360ce_0",
"channel": "conda-forge",
"dist_name": "click-7.1.1-pyh8c360ce_0",
"name": "click",
"platform": "noarch",
"version": "7.1.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "cloudpickle-1.3.0-py_0",
"name": "cloudpickle",
"platform": "noarch",
"version": "1.3.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "colorcet-2.0.2-pypi_0",
"name": "colorcet",
"platform": "pypi",
"version": "2.0.2"
},
{
"base_url": "https://conda.anaconda.org/nvidia",
"build_number": 0,
"build_string": "h6bb024c_0",
"channel": "nvidia",
"dist_name": "cudatoolkit-10.1.243-h6bb024c_0",
"name": "cudatoolkit",
"platform": "linux-64",
"version": "10.1.243"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 1612,
"build_string": "py37_1612",
"channel": "rapidsai-nightly",
"dist_name": "cudf-0.14.0a200323-py37_1612",
"name": "cudf",
"platform": "linux-64",
"version": "0.14.0a200323"
},
{
"base_url": "https://conda.anaconda.org/nvidia",
"build_number": 0,
"build_string": "cuda10.1_0",
"channel": "nvidia",
"dist_name": "cudnn-7.6.0-cuda10.1_0",
"name": "cudnn",
"platform": "linux-64",
"version": "7.6.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 745,
"build_string": "cuda10.1_py37_745",
"channel": "rapidsai-nightly",
"dist_name": "cuml-0.14.0a200330-cuda10.1_py37_745",
"name": "cuml",
"platform": "linux-64",
"version": "0.14.0a200330"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37h0632833_0",
"channel": "conda-forge",
"dist_name": "cupy-7.3.0-py37h0632833_0",
"name": "cupy",
"platform": "linux-64",
"version": "7.3.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hf8cf82a_0",
"channel": "conda-forge",
"dist_name": "curl-7.68.0-hf8cf82a_0",
"name": "curl",
"platform": "linux-64",
"version": "7.68.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 135,
"build_string": "py37_135",
"channel": "rapidsai-nightly",
"dist_name": "cuspatial-0.14.0a200327-py37_135",
"name": "cuspatial",
"platform": "linux-64",
"version": "0.14.0a200327"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "cycler-0.10.0-pypi_0",
"name": "cycler",
"platform": "pypi",
"version": "0.10.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37h516909a_0",
"channel": "conda-forge",
"dist_name": "cytoolz-0.10.1-py37h516909a_0",
"name": "cytoolz",
"platform": "linux-64",
"version": "0.10.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "dask-2.12.0-py_0",
"name": "dask",
"platform": "noarch",
"version": "2.12.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "dask-core-2.12.0-py_0",
"name": "dask-core",
"platform": "noarch",
"version": "2.12.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 35,
"build_string": "py37_35",
"channel": "rapidsai-nightly",
"dist_name": "dask-cuda-0.14.0a200330-py37_35",
"name": "dask-cuda",
"platform": "linux-64",

"version": "0.14.0a200330"

},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 1619,
"build_string": "py37_1619",
"channel": "rapidsai-nightly",
"dist_name": "dask-cudf-0.14.0a200323-py37_1619",
"name": "dask-cudf",
"platform": "linux-64",
"version": "0.14.0a200323"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "datashader-0.10.0-pypi_0",
"name": "datashader",
"platform": "pypi",
"version": "0.10.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "datashape-0.5.2-pypi_0",
"name": "datashape",
"platform": "pypi",
"version": "0.5.2"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "decorator-4.4.2-pypi_0",
"name": "decorator",
"platform": "pypi",
"version": "4.4.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37_0",
"channel": "conda-forge",
"dist_name": "distributed-2.12.0-py37_0",
"name": "distributed",
"platform": "linux-64",
"version": "2.12.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "dlpack-0.2-he1b5a44_1",
"name": "dlpack",
"platform": "linux-64",
"version": "0.2"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "docutils-0.15.2-pypi_0",
"name": "docutils",
"platform": "pypi",
"version": "0.15.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "he1b5a44_2",
"channel": "conda-forge",
"dist_name": "double-conversion-3.1.5-he1b5a44_2",
"name": "double-conversion",
"platform": "linux-64",
"version": "3.1.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "he1b5a44_2",
"channel": "conda-forge",
"dist_name": "expat-2.2.9-he1b5a44_2",
"name": "expat",
"platform": "linux-64",
"version": "2.2.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37h8f50634_0",
"channel": "conda-forge",
"dist_name": "fastavro-0.23.0-py37h8f50634_0",
"name": "fastavro",
"platform": "linux-64",
"version": "0.23.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "py37h3340039_1001",
"channel": "conda-forge",
"dist_name": "fastrlock-0.4-py37h3340039_1001",
"name": "fastrlock",
"platform": "linux-64",
"version": "0.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "h86ecdb6_1001",
"channel": "conda-forge",
"dist_name": "fontconfig-2.13.1-h86ecdb6_1001",
"name": "fontconfig",
"platform": "linux-64",
"version": "2.13.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "he06d7ca_0",
"channel": "conda-forge",
"dist_name": "freetype-2.10.1-he06d7ca_0",
"name": "freetype",
"platform": "linux-64",
"version": "2.10.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h14c3975_1002",
"channel": "conda-forge",
"dist_name": "freexl-1.0.5-h14c3975_1002",
"name": "freexl",
"platform": "linux-64",
"version": "1.0.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "fsspec-0.6.3-py_0",
"name": "fsspec",
"platform": "noarch",

"version": "0.6.3"

},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37h5f563d9_0",
"channel": "conda-forge",
"dist_name": "gdal-2.4.4-py37h5f563d9_0",
"name": "gdal",
"platform": "linux-64",
"version": "2.4.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "geos-3.8.0-he1b5a44_1",
"name": "geos",
"platform": "linux-64",
"version": "3.8.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 8,
"build_string": "h38872f0_8",
"channel": "conda-forge",
"dist_name": "geotiff-1.5.1-h38872f0_8",
"name": "geotiff",
"platform": "linux-64",
"version": "1.5.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "hc5be6a0_1002",
"channel": "conda-forge",
"dist_name": "gettext-0.19.8.1-hc5be6a0_1002",
"name": "gettext",
"platform": "linux-64",
"version": "0.19.8.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "he1b5a44_1002",
"channel": "conda-forge",
"dist_name": "gflags-2.2.2-he1b5a44_1002",
"name": "gflags",
"platform": "linux-64",
"version": "2.2.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "h516909a_1",
"channel": "conda-forge",
"dist_name": "giflib-5.1.7-h516909a_1",
"name": "giflib",
"platform": "linux-64",
"version": "5.1.7"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1003,
"build_string": "py37he00f558_1003",
"channel": "conda-forge",
"dist_name": "glib-2.58.3-py37he00f558_1003",
"name": "glib",
"platform": "linux-64",
"version": "2.58.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "glog-0.4.0-he1b5a44_1",
"name": "glog",
"platform": "linux-64",
"version": "0.4.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h18db393_0",
"channel": "conda-forge",
"dist_name": "grpc-cpp-1.23.0-h18db393_0",
"name": "grpc-cpp",
"platform": "linux-64",
"version": "1.23.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1003,
"build_string": "hf30be14_1003",
"channel": "conda-forge",
"dist_name": "hdf4-4.2.13-hf30be14_1003",
"name": "hdf4",
"platform": "linux-64",
"version": "4.2.13"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1104,
"build_string": "nompi_h3c11f04_1104",
"channel": "conda-forge",
"dist_name": "hdf5-1.10.5-nompi_h3c11f04_1104",
"name": "hdf5",
"platform": "linux-64",
"version": "1.10.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "heapdict-1.0.1-py_0",
"name": "heapdict",
"platform": "noarch",
"version": "1.0.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "icu-64.2-he1b5a44_1",
"name": "icu",
"platform": "linux-64",
"version": "64.2"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "idna-2.9-pypi_0",
"name": "idna",
"platform": "pypi",
"version": "2.9"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "imageio-2.8.0-pypi_0",
"name": "imageio",
"platform": "pypi",
"version": "2.8.0"

},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "ipython-7.13.0-pypi_0",
"name": "ipython",
"platform": "pypi",
"version": "7.13.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "ipython-genutils-0.2.0-pypi_0",
"name": "ipython-genutils",
"platform": "pypi",
"version": "0.2.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "jedi-0.16.0-pypi_0",
"name": "jedi",
"platform": "pypi",
"version": "0.16.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "jinja2-2.11.1-py_0",
"name": "jinja2",
"platform": "noarch",
"version": "2.11.1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "jmespath-0.9.5-pypi_0",
"name": "jmespath",
"platform": "pypi",
"version": "0.9.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "joblib-0.14.1-py_0",
"name": "joblib",
"platform": "noarch",
"version": "0.14.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "h14c3975_1001",
"channel": "conda-forge",
"dist_name": "jpeg-9c-h14c3975_1001",
"name": "jpeg",
"platform": "linux-64",
"version": "9c"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "h14c3975_1001",
"channel": "conda-forge",
"dist_name": "json-c-0.13.1-h14c3975_1001",
"name": "json-c",
"platform": "linux-64",
"version": "0.13.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hec59c27_0",
"channel": "conda-forge",
"dist_name": "kealib-1.4.12-hec59c27_0",
"name": "kealib",
"platform": "linux-64",
"version": "1.4.12"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "kiwisolver-1.1.0-pypi_0",
"name": "kiwisolver",
"platform": "pypi",
"version": "1.1.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h2fd8d38_0",
"channel": "conda-forge",
"dist_name": "krb5-1.16.4-h2fd8d38_0",
"name": "krb5",
"platform": "linux-64",
"version": "1.16.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h53a641e_0",
"channel": "conda-forge",
"dist_name": "ld_impl_linux-64-2.34-h53a641e_0",
"name": "ld_impl_linux-64",
"platform": "linux-64",
"version": "2.34"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 16,
"build_string": "16_openblas",
"channel": "conda-forge",
"dist_name": "libblas-3.8.0-16_openblas",
"name": "libblas",
"platform": "linux-64",
"version": "3.8.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 16,
"build_string": "16_openblas",
"channel": "conda-forge",
"dist_name": "libcblas-3.8.0-16_openblas",
"name": "libcblas",
"platform": "linux-64",
"version": "3.8.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 2013,
"build_string": "cuda10.1_2013",
"channel": "rapidsai-nightly",
"dist_name": "libcudf-0.14.0a200331-cuda10.1_2013",
"name": "libcudf",
"platform": "linux-64",
"version": "0.14.0a200331"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",

"build_number": 745,

"build_string": "cuda10.1_745",
"channel": "rapidsai-nightly",
"dist_name": "libcuml-0.14.0a200330-cuda10.1_745",
"name": "libcuml",
"platform": "linux-64",
"version": "0.14.0a200330"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 14,
"build_string": "cuda10.1_14",
"channel": "rapidsai-nightly",
"dist_name": "libcumlprims-0.13.0a200327-cuda10.1_14",
"name": "libcumlprims",
"platform": "linux-64",
"version": "0.13.0a200327"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hda55be3_0",
"channel": "conda-forge",
"dist_name": "libcurl-7.68.0-hda55be3_0",
"name": "libcurl",
"platform": "linux-64",
"version": "7.68.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 135,
"build_string": "cuda10.1_135",
"channel": "rapidsai-nightly",
"dist_name": "libcuspatial-0.14.0a200327-cuda10.1_135",
"name": "libcuspatial",
"platform": "linux-64",
"version": "0.14.0a200327"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hd3bb157_0",
"channel": "conda-forge",
"dist_name": "libdap4-3.20.4-hd3bb157_0",
"name": "libdap4",
"platform": "linux-64",
"version": "3.20.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "hf8c457e_1001",
"channel": "conda-forge",
"dist_name": "libedit-3.1.20170329-hf8c457e_1001",
"name": "libedit",
"platform": "linux-64",
"version": "3.1.20170329"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h72c5cf5_0",
"channel": "conda-forge",
"dist_name": "libevent-2.1.10-h72c5cf5_0",
"name": "libevent",
"platform": "linux-64",
"version": "2.1.10"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1007,
"build_string": "he1b5a44_1007",
"channel": "conda-forge",
"dist_name": "libffi-3.2.1-he1b5a44_1007",
"name": "libffi",
"platform": "linux-64",
"version": "3.2.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "h24d8f2e_2",
"channel": "conda-forge",
"dist_name": "libgcc-ng-9.2.0-h24d8f2e_2",
"name": "libgcc-ng",
"platform": "linux-64",
"version": "9.2.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h2b6fda6_0",
"channel": "conda-forge",
"dist_name": "libgdal-2.4.4-h2b6fda6_0",
"name": "libgdal",
"platform": "linux-64",
"version": "2.4.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 5,
"build_string": "hdf63c60_5",
"channel": "conda-forge",
"dist_name": "libgfortran-ng-7.3.0-hdf63c60_5",
"name": "libgfortran-ng",
"platform": "linux-64",
"version": "7.3.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h3c4fd83_0",
"channel": "conda-forge",
"dist_name": "libhwloc-2.1.0-h3c4fd83_0",
"name": "libhwloc",
"platform": "linux-64",
"version": "2.1.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1006,
"build_string": "h516909a_1006",
"channel": "conda-forge",
"dist_name": "libiconv-1.15-h516909a_1006",
"name": "libiconv",
"platform": "linux-64",
"version": "1.15"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1010,
"build_string": "h4fcabce_1010",
"channel": "conda-forge",
"dist_name": "libkml-1.3.0-h4fcabce_1010",
"name": "libkml",
"platform": "linux-64",
"version": "1.3.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 16,
"build_string": "16_openblas",
"channel": "conda-forge",

"dist_name": "liblapack-3.8.0-16_openblas",

"name": "liblapack",
"platform": "linux-64",
"version": "3.8.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hc9558a2_0",
"channel": "conda-forge",
"dist_name": "libllvm8-8.0.1-hc9558a2_0",
"name": "libllvm8",
"platform": "linux-64",
"version": "8.0.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 101,
"build_string": "nompi_h9f9fd6a_101",
"channel": "conda-forge",
"dist_name": "libnetcdf-4.7.3-nompi_h9f9fd6a_101",
"name": "libnetcdf",
"platform": "linux-64",
"version": "4.7.3"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 2013,
"build_string": "cuda10.1_2013",
"channel": "rapidsai-nightly",
"dist_name": "libnvstrings-0.14.0a200331-cuda10.1_2013",
"name": "libnvstrings",
"platform": "linux-64",
"version": "0.14.0a200331"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h5ec1e0e_0",
"channel": "conda-forge",
"dist_name": "libopenblas-0.3.9-h5ec1e0e_0",
"name": "libopenblas",
"platform": "linux-64",
"version": "0.3.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "hed695b0_1",
"channel": "conda-forge",
"dist_name": "libpng-1.6.37-hed695b0_1",
"name": "libpng",
"platform": "linux-64",
"version": "1.6.37"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hae5116b_0",
"channel": "conda-forge",
"dist_name": "libpq-12.2-hae5116b_0",
"name": "libpq",
"platform": "linux-64",
"version": "12.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h8b12597_0",
"channel": "conda-forge",
"dist_name": "libprotobuf-3.8.0-h8b12597_0",
"name": "libprotobuf",
"platform": "linux-64",
"version": "3.8.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 241,
"build_string": "cuda10.1_241",
"channel": "rapidsai-nightly",
"dist_name": "librmm-0.14.0a200330-cuda10.1_241",
"name": "librmm",
"platform": "linux-64",
"version": "0.14.0a200330"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1034,
"build_string": "ha48a99a_1034",
"channel": "conda-forge",
"dist_name": "libspatialite-4.3.0a-ha48a99a_1034",
"name": "libspatialite",
"platform": "linux-64",
"version": "4.3.0a"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "h22169c7_2",
"channel": "conda-forge",
"dist_name": "libssh2-1.8.2-h22169c7_2",
"name": "libssh2",
"platform": "linux-64",
"version": "1.8.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "hdf63c60_2",
"channel": "conda-forge",
"dist_name": "libstdcxx-ng-9.2.0-hdf63c60_2",
"name": "libstdcxx-ng",
"platform": "linux-64",
"version": "9.2.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hfc65ed5_0",
"channel": "conda-forge",
"dist_name": "libtiff-4.1.0-hfc65ed5_0",
"name": "libtiff",
"platform": "linux-64",
"version": "4.1.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1000,
"build_string": "h14c3975_1000",
"channel": "conda-forge",
"dist_name": "libuuid-2.32.1-h14c3975_1000",
"name": "libuuid",
"platform": "linux-64",
"version": "2.32.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h14c3975_1002",
"channel": "conda-forge",
"dist_name": "libxcb-1.13-h14c3975_1002",
"name": "libxcb",
"platform": "linux-64",
"version": "1.13"

},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hee79883_0",
"channel": "conda-forge",
"dist_name": "libxml2-2.9.10-hee79883_0",
"name": "libxml2",
"platform": "linux-64",
"version": "2.9.10"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "hc9558a2_2",
"channel": "conda-forge",
"dist_name": "llvm-openmp-9.0.1-hc9558a2_2",
"name": "llvm-openmp",
"platform": "linux-64",
"version": "9.0.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h5202443_1",
"channel": "conda-forge",
"dist_name": "llvmlite-0.31.0-py37h5202443_1",
"name": "llvmlite",
"platform": "linux-64",
"version": "0.31.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "py_2",
"channel": "conda-forge",
"dist_name": "locket-0.2.0-py_2",
"name": "locket",
"platform": "noarch",
"version": "0.2.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "he1b5a44_1001",
"channel": "conda-forge",
"dist_name": "lz4-c-1.8.3-he1b5a44_1001",
"name": "lz4-c",
"platform": "linux-64",
"version": "1.8.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h8f50634_1",
"channel": "conda-forge",
"dist_name": "markupsafe-1.1.1-py37h8f50634_1",
"name": "markupsafe",
"platform": "linux-64",
"version": "1.1.1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "matplotlib-3.2.1-pypi_0",
"name": "matplotlib",
"platform": "pypi",
"version": "3.2.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h99015e2_1",
"channel": "conda-forge",
"dist_name": "msgpack-python-1.0.0-py37h99015e2_1",
"name": "msgpack-python",
"platform": "linux-64",
"version": "1.0.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "multipledispatch-0.6.0-pypi_0",
"name": "multipledispatch",
"platform": "pypi",
"version": "0.6.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h51cf6c1_0",
"channel": "conda-forge",
"dist_name": "nccl-2.6.4.1-h51cf6c1_0",
"name": "nccl",
"platform": "linux-64",
"version": "2.6.4.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "hf484d3e_1002",
"channel": "conda-forge",
"dist_name": "ncurses-6.1-hf484d3e_1002",
"name": "ncurses",
"platform": "linux-64",
"version": "6.1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "networkx-2.4-pypi_0",
"name": "networkx",
"platform": "pypi",
"version": "2.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37hb3f55d8_0",
"channel": "conda-forge",
"dist_name": "numba-0.48.0-py37hb3f55d8_0",
"name": "numba",
"platform": "linux-64",
"version": "0.48.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h8960a57_1",
"channel": "conda-forge",
"dist_name": "numpy-1.18.1-py37h8960a57_1",
"name": "numpy",
"platform": "linux-64",
"version": "1.18.1"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 2013,
"build_string": "py37_2013",
"channel": "rapidsai-nightly",
"dist_name": "nvstrings-0.14.0a200331-py37_2013",
"name": "nvstrings",
"platform": "linux-64",

"version": "0.14.0a200331"

},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "olefile-0.46-py_0",
"name": "olefile",
"platform": "noarch",
"version": "0.46"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 3,
"build_string": "h981e76c_3",
"channel": "conda-forge",
"dist_name": "openjpeg-2.3.1-h981e76c_3",
"name": "openjpeg",
"platform": "linux-64",
"version": "2.3.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h516909a_0",
"channel": "conda-forge",
"dist_name": "openssl-1.1.1e-h516909a_0",
"name": "openssl",
"platform": "linux-64",
"version": "1.1.1e"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "packaging-20.1-py_0",
"name": "packaging",
"platform": "noarch",
"version": "20.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37hb3f55d8_0",
"channel": "conda-forge",
"dist_name": "pandas-0.25.3-py37hb3f55d8_0",
"name": "pandas",
"platform": "linux-64",
"version": "0.25.3"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "param-1.9.3-pypi_0",
"name": "param",
"platform": "pypi",
"version": "1.9.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "2",
"channel": "conda-forge",
"dist_name": "parquet-cpp-1.5.1-2",
"name": "parquet-cpp",
"platform": "noarch",
"version": "1.5.1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "parso-0.6.2-pypi_0",
"name": "parso",
"platform": "pypi",
"version": "0.6.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "partd-1.1.0-py_0",
"name": "partd",
"platform": "noarch",
"version": "1.1.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "he1b5a44_0",
"channel": "conda-forge",
"dist_name": "pcre-8.44-he1b5a44_0",
"name": "pcre",
"platform": "linux-64",
"version": "8.44"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pexpect-4.8.0-pypi_0",
"name": "pexpect",
"platform": "pypi",
"version": "4.8.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pickleshare-0.7.5-pypi_0",
"name": "pickleshare",
"platform": "pypi",
"version": "0.7.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h718be6c_1",
"channel": "conda-forge",
"dist_name": "pillow-7.0.0-py37h718be6c_1",
"name": "pillow",
"platform": "linux-64",
"version": "7.0.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 2,
"build_string": "py_2",
"channel": "conda-forge",
"dist_name": "pip-20.0.2-py_2",
"name": "pip",
"platform": "noarch",
"version": "20.0.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1003,
"build_string": "h516909a_1003",
"channel": "conda-forge",
"dist_name": "pixman-0.38.0-h516909a_1003",
"name": "pixman",
"platform": "linux-64",
"version": "0.38.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 8,
"build_string": "h14e79db_8",

"channel": "conda-forge",

"dist_name": "poppler-0.67.0-h14e79db_8",
"name": "poppler",
"platform": "linux-64",
"version": "0.67.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "1",
"channel": "conda-forge",
"dist_name": "poppler-data-0.4.9-1",
"name": "poppler-data",
"platform": "noarch",
"version": "0.4.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hf1211e9_0",
"channel": "conda-forge",
"dist_name": "postgresql-12.2-hf1211e9_0",
"name": "postgresql",
"platform": "linux-64",
"version": "12.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hc80f0dc_0",
"channel": "conda-forge",
"dist_name": "proj-6.3.0-hc80f0dc_0",
"name": "proj",
"platform": "linux-64",
"version": "6.3.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "prompt-toolkit-3.0.5-pypi_0",
"name": "prompt-toolkit",
"platform": "pypi",
"version": "3.0.5"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h8f50634_1",
"channel": "conda-forge",
"dist_name": "psutil-5.7.0-py37h8f50634_1",
"name": "psutil",
"platform": "linux-64",
"version": "5.7.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1001,
"build_string": "h14c3975_1001",
"channel": "conda-forge",
"dist_name": "pthread-stubs-0.4-h14c3975_1001",
"name": "pthread-stubs",
"platform": "linux-64",
"version": "0.4"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "ptyprocess-0.6.0-pypi_0",
"name": "ptyprocess",
"platform": "pypi",
"version": "0.6.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h8b68381_1",
"channel": "conda-forge",
"dist_name": "pyarrow-0.15.0-py37h8b68381_1",
"name": "pyarrow",
"platform": "linux-64",
"version": "0.15.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pyct-0.4.6-pypi_0",
"name": "pyct",
"platform": "pypi",
"version": "0.4.6"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pygments-2.6.1-pypi_0",
"name": "pygments",
"platform": "pypi",
"version": "2.6.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "pynvml-8.0.4-py_0",
"name": "pynvml",
"platform": "noarch",
"version": "8.0.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "pyparsing-2.4.6-py_0",
"name": "pyparsing",
"platform": "noarch",
"version": "2.4.6"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pyproj-2.6.0-pypi_0",
"name": "pyproj",
"platform": "pypi",
"version": "2.6.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 5,
"build_string": "h8356626_5_cpython",
"channel": "conda-forge",
"dist_name": "python-3.7.6-h8356626_5_cpython",
"name": "python",
"platform": "linux-64",
"version": "3.7.6"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "python-dateutil-2.8.1-py_0",
"name": "python-dateutil",

"platform": "noarch",

"version": "2.8.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "1_cp37m",
"channel": "conda-forge",
"dist_name": "python_abi-3.7-1_cp37m",
"name": "python_abi",
"platform": "linux-64",
"version": "3.7"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "pytz-2019.3-py_0",
"name": "pytz",
"platform": "noarch",
"version": "2019.3"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "pywavelets-1.1.1-pypi_0",
"name": "pywavelets",
"platform": "pypi",
"version": "1.1.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37h8f50634_0",
"channel": "conda-forge",
"dist_name": "pyyaml-5.3.1-py37h8f50634_0",
"name": "pyyaml",
"platform": "linux-64",
"version": "5.3.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "he1b5a44_0",
"channel": "conda-forge",
"dist_name": "re2-2020.03.03-he1b5a44_0",
"name": "re2",
"platform": "linux-64",
"version": "2020.03.03"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hf8c457e_0",
"channel": "conda-forge",
"dist_name": "readline-8.0-hf8c457e_0",
"name": "readline",
"platform": "linux-64",
"version": "8.0"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "requests-2.23.0-pypi_0",
"name": "requests",
"platform": "pypi",
"version": "2.23.0"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 241,
"build_string": "py37_241",
"channel": "rapidsai-nightly",
"dist_name": "rmm-0.14.0a200330-py37_241",
"name": "rmm",
"platform": "linux-64",
"version": "0.14.0a200330"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "s3fs-0.4.1-pypi_0",
"name": "s3fs",
"platform": "pypi",
"version": "0.4.1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "scikit-image-0.16.2-pypi_0",
"name": "scikit-image",
"platform": "pypi",
"version": "0.16.2"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "scikit-learn-0.22.2.post1-pypi_0",
"name": "scikit-learn",
"platform": "pypi",
"version": "0.22.2.post1"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "scipy-1.4.1-pypi_0",
"name": "scipy",
"platform": "pypi",
"version": "1.4.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py37hc8dfbb8_0",
"channel": "conda-forge",
"dist_name": "setuptools-46.1.3-py37hc8dfbb8_0",
"name": "setuptools",
"platform": "linux-64",
"version": "46.1.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py_1",
"channel": "conda-forge",
"dist_name": "six-1.14.0-py_1",
"name": "six",
"platform": "noarch",
"version": "1.14.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "snappy-1.1.8-he1b5a44_1",
"name": "snappy",
"platform": "linux-64",
"version": "1.1.8"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,

"build_string": "py_0",

"channel": "conda-forge",
"dist_name": "sortedcontainers-2.1.0-py_0",
"name": "sortedcontainers",
"platform": "noarch",
"version": "2.1.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hcee41ef_0",
"channel": "conda-forge",
"dist_name": "sqlite-3.30.1-hcee41ef_0",
"name": "sqlite",
"platform": "linux-64",
"version": "3.30.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "tblib-1.6.0-py_0",
"name": "tblib",
"platform": "noarch",
"version": "1.6.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1004,
"build_string": "hf3afdfd_1004",
"channel": "conda-forge",
"dist_name": "thrift-cpp-0.12.0-hf3afdfd_1004",
"name": "thrift-cpp",
"platform": "linux-64",
"version": "0.12.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "hed695b0_0",
"channel": "conda-forge",
"dist_name": "tk-8.6.10-hed695b0_0",
"name": "tk",
"platform": "linux-64",
"version": "8.6.10"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "toolz-0.10.0-py_0",
"name": "toolz",
"platform": "noarch",
"version": "0.10.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py37h8f50634_1",
"channel": "conda-forge",
"dist_name": "tornado-6.0.4-py37h8f50634_1",
"name": "tornado",
"platform": "linux-64",
"version": "6.0.4"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "traitlets-4.3.3-pypi_0",
"name": "traitlets",
"platform": "pypi",
"version": "4.3.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 3,
"build_string": "py37hc8dfbb8_3",
"channel": "conda-forge",
"dist_name": "typing_extensions-3.7.4.1-py37hc8dfbb8_3",
"name": "typing_extensions",
"platform": "linux-64",
"version": "3.7.4.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h516909a_1002",
"channel": "conda-forge",
"dist_name": "tzcode-2019a-h516909a_1002",
"name": "tzcode",
"platform": "linux-64",
"version": "2019a"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 0,
"build_string": "cuda10.1_0",
"channel": "rapidsai-nightly",
"dist_name": "ucx-1.7.0+g9d06c3a-cuda10.1_0",
"name": "ucx",
"platform": "linux-64",
"version": "1.7.0+g9d06c3a"
},
{
"base_url": "https://conda.anaconda.org/rapidsai-nightly",
"build_number": 54,
"build_string": "py37_54",
"channel": "rapidsai-nightly",
"dist_name": "ucx-py-0.14.0a200330+g9d06c3a-py37_54",
"name": "ucx-py",
"platform": "linux-64",
"version": "0.14.0a200330+g9d06c3a"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "umap-0.1.1-pypi_0",
"name": "umap",
"platform": "pypi",
"version": "0.1.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "he1b5a44_1",
"channel": "conda-forge",
"dist_name": "uriparser-0.9.3-he1b5a44_1",
"name": "uriparser",
"platform": "linux-64",
"version": "0.9.3"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "urllib3-1.25.8-pypi_0",
"name": "urllib3",
"platform": "pypi",
"version": "1.25.8"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,

"build_string": "pypi_0",

"channel": "pypi",
"dist_name": "wcwidth-0.1.9-pypi_0",
"name": "wcwidth",
"platform": "pypi",
"version": "0.1.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "py_1",
"channel": "conda-forge",
"dist_name": "wheel-0.34.2-py_1",
"name": "wheel",
"platform": "noarch",
"version": "0.34.2"
},
{
"base_url": "https://conda.anaconda.org/pypi",
"build_number": 0,
"build_string": "pypi_0",
"channel": "pypi",
"dist_name": "xarray-0.15.1-pypi_0",
"name": "xarray",
"platform": "pypi",
"version": "0.15.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1004,
"build_string": "h8412b87_1004",
"channel": "conda-forge",
"dist_name": "xerces-c-3.2.2-h8412b87_1004",
"name": "xerces-c",
"platform": "linux-64",
"version": "3.2.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h14c3975_1002",
"channel": "conda-forge",
"dist_name": "xorg-kbproto-1.0.7-h14c3975_1002",
"name": "xorg-kbproto",
"platform": "linux-64",
"version": "1.0.7"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h516909a_0",
"channel": "conda-forge",
"dist_name": "xorg-libice-1.0.10-h516909a_0",
"name": "xorg-libice",
"platform": "linux-64",
"version": "1.0.10"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1000,
"build_string": "h84519dc_1000",
"channel": "conda-forge",
"dist_name": "xorg-libsm-1.2.3-h84519dc_1000",
"name": "xorg-libsm",
"platform": "linux-64",
"version": "1.2.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h516909a_0",
"channel": "conda-forge",
"dist_name": "xorg-libx11-1.6.9-h516909a_0",
"name": "xorg-libx11",
"platform": "linux-64",
"version": "1.6.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h14c3975_0",
"channel": "conda-forge",
"dist_name": "xorg-libxau-1.0.9-h14c3975_0",
"name": "xorg-libxau",
"platform": "linux-64",
"version": "1.0.9"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h516909a_0",
"channel": "conda-forge",
"dist_name": "xorg-libxdmcp-1.1.3-h516909a_0",
"name": "xorg-libxdmcp",
"platform": "linux-64",
"version": "1.1.3"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h516909a_0",
"channel": "conda-forge",
"dist_name": "xorg-libxext-1.3.4-h516909a_0",
"name": "xorg-libxext",
"platform": "linux-64",
"version": "1.3.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h516909a_1002",
"channel": "conda-forge",
"dist_name": "xorg-libxrender-0.9.10-h516909a_1002",
"name": "xorg-libxrender",
"platform": "linux-64",
"version": "0.9.10"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h14c3975_1002",
"channel": "conda-forge",
"dist_name": "xorg-renderproto-0.11.1-h14c3975_1002",
"name": "xorg-renderproto",
"platform": "linux-64",
"version": "0.11.1"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h14c3975_1002",
"channel": "conda-forge",
"dist_name": "xorg-xextproto-7.3.0-h14c3975_1002",
"name": "xorg-xextproto",
"platform": "linux-64",
"version": "7.3.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1007,
"build_string": "h14c3975_1007",
"channel": "conda-forge",
"dist_name": "xorg-xproto-7.0.31-h14c3975_1007",
"name": "xorg-xproto",

"platform": "linux-64",
"version": "7.0.31"

},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1002,
"build_string": "h516909a_1002",
"channel": "conda-forge",
"dist_name": "xz-5.2.4-h516909a_1002",
"name": "xz",
"platform": "linux-64",
"version": "5.2.4"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1,
"build_string": "h516909a_1",
"channel": "conda-forge",
"dist_name": "yaml-0.2.2-h516909a_1",
"name": "yaml",
"platform": "linux-64",
"version": "0.2.2"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "py_0",
"channel": "conda-forge",
"dist_name": "zict-2.0.0-py_0",
"name": "zict",
"platform": "noarch",
"version": "2.0.0"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 1006,
"build_string": "h516909a_1006",
"channel": "conda-forge",
"dist_name": "zlib-1.2.11-h516909a_1006",
"name": "zlib",
"platform": "linux-64",
"version": "1.2.11"
},
{
"base_url": "https://conda.anaconda.org/conda-forge",
"build_number": 0,
"build_string": "h3b9ef0a_0",
"channel": "conda-forge",
"dist_name": "zstd-1.4.3-h3b9ef0a_0",
"name": "zstd",
"platform": "linux-64",
"version": "1.4.3"
}
]

@rgsl888prabhu rgsl888prabhu self-assigned this Apr 8, 2020
@rgsl888prabhu
Copy link
Contributor

Simple repro

>>> import cudf
>>> sr = cudf.Series(["cat", "dog"])
>>> sr.astype('str').str.slice(4, 6).astype('int')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/rgsl888/Projects/cython/cudf/python/cudf/cudf/core/series.py", line 1368, in astype
    raise e
  File "/home/rgsl888/Projects/cython/cudf/python/cudf/cudf/core/series.py", line 1364, in astype
    data=self._column.astype(dtype, **kwargs)
  File "/home/rgsl888/Projects/cython/cudf/python/cudf/cudf/core/column/column.py", line 851, in astype
    return self.as_numerical_column(dtype, **kwargs)
  File "/home/rgsl888/Projects/cython/cudf/python/cudf/cudf/core/column/string.py", line 2035, in as_numerical_column
    return _str_to_numeric_typecast_functions[str_dtype](self, **kwargs)
  File "cudf/_lib/string_casting.pyx", line 288, in cudf._lib.string_casting.stol
    return string_to_integer(input_col, np.dtype("int64"))
  File "cudf/_lib/string_casting.pyx", line 156, in cudf._lib.string_casting.string_to_integer
    cpp_to_integers(
RuntimeError: transform: failed to synchronize: cudaErrorIllegalAddress: an illegal memory access was encountered

@rgsl888prabhu
Copy link
Contributor

@kevingerman All of this boils down to same issue of map_partitions, you need to provide meta to overcome this issue.

When you don't provide meta, map_partition in search to meta information, passes random data such as "foo" to your function, which is actually not a number and at the end this fails. You would find same issue with pandas as well. For reference dask/dask#6078 and #4836

>>> import pandas as pd
>>> sr = pd.Series(["cat", "dog"])
>>> sr.astype('str').str.slice(4, 6).astype('int')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/generic.py", line 5882, in astype
    dtype=dtype, copy=copy, errors=errors, **kwargs
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/internals/managers.py", line 581, in astype
    return self.apply("astype", dtype=dtype, **kwargs)
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/internals/managers.py", line 438, in apply
    applied = getattr(b, f)(**kwargs)
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/internals/blocks.py", line 559, in astype
    return self._astype(dtype, copy=copy, errors=errors, values=values, **kwargs)
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/internals/blocks.py", line 643, in _astype
    values = astype_nansafe(vals1d, dtype, copy=True, **kwargs)
  File "/home/rgsl888/anaconda3/envs/cudf_dev2/lib/python3.7/site-packages/pandas/core/dtypes/cast.py", line 707, in astype_nansafe
    return lib.astype_intsafe(arr.ravel(), dtype).reshape(arr.shape)
  File "pandas/_libs/lib.pyx", line 547, in pandas._libs.lib.astype_intsafe
ValueError: invalid literal for int() with base 10: ''

@kevingerman
Copy link
Author

That behavior changed between 0.13 and 0.14. Is it is an intentional change of behavior?

@rgsl888prabhu
Copy link
Contributor

@kevingerman Earlier for any non-numeric input string cudf would return 0, but due to some recent changes for empty string as in our case which is formed due to slice would produce cudaErrorIllegalAddress. In any case, as per #2707 we would be throwing error in future for such cases.

@kevingerman
Copy link
Author

kevingerman commented Apr 9, 2020

That does raise a good point for my original workflow and the importance of using meta fields to guard against bad data.

However, in the original repro script every value was an 8 char string, and the slice(4,6) call should have always produced a series of all '01'.

@rgsl888prabhu
Copy link
Contributor

rgsl888prabhu commented Apr 9, 2020

As it was mentioned in the dask issue, when map_partitions is called without meta, it tries to get meta information by sending a sample string to your function, and this sample string happens to be something like cat, dog, foo which are not what you provided, slice of this will result in an empty string and it fails.

@davidwendt davidwendt self-assigned this Apr 9, 2020
@davidwendt
Copy link
Contributor

I was able to verify that the error is caused by an all-empty strings column:

import cudf
ds = cudf.Series(['','','','',''])
ds.astype('int')
...
RuntimeError: transform: failed to synchronize: cudaErrorIllegalAddress: an illegal memory access was encountered

If any of the those strings was not empty then the error would not occur.
This is an existing bug that was unmasked by the changes in #4548
Note that the astype('float') and astype('bool') for example do not throw a CUDA exception.

This is definitely a bug in libcudf. The code should be returning 0s for these and not throwing a CUDA exception. I will create a PR to fix the cudf::strings::to_integers() logic.

@rgsl888prabhu
Copy link
Contributor

@davidwendt but we were discussing about adding is_integer rather than returning 0s, isn't it ?

@rgsl888prabhu
Copy link
Contributor

And better than that would it be better to check for numerical rather than just integer or other types.

@davidwendt
Copy link
Contributor

davidwendt commented Apr 9, 2020

And better than that would it be better to check for numerical rather than just integer or other types.

That is still necessary for invalid characters. But I think an empty string (or bad characters) should not be causing a CUDA exception. You should get 0 like the other converters do.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working libcudf Affects libcudf (C++/CUDA) code. strings strings issues (C++ and Python)
Projects
None yet
4 participants