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

test_device_host_file_step_by_step test failing #1070

Closed
pentschev opened this issue Jan 3, 2023 · 0 comments · Fixed by #1071
Closed

test_device_host_file_step_by_step test failing #1070

pentschev opened this issue Jan 3, 2023 · 0 comments · Fixed by #1071

Comments

@pentschev
Copy link
Member

It seems that dask_cuda/tests/test_cudf_builtin_spilling.py::test_device_host_file_step_by_step recently began to fail:

==================================== FAILURES =====================================
_______________________ test_device_host_file_step_by_step ________________________

tmp_path = PosixPath('/tmp/pytest-of-pentschev/pytest-175/test_device_host_file_step_by_0')
manager = <SpillManager spill_on_demand=False device_memory_limit=N/A | 0B spilled | 24B (0%) unspilled (unspillable)>

    def test_device_host_file_step_by_step(tmp_path, manager: SpillManager):
        tmpdir = tmp_path / "storage"
        tmpdir.mkdir()
        pdf = pandas.DataFrame({"a": [1, 2, 3]})
        cdf = cudf.DataFrame({"a": [1, 2, 3]})
        dhf = DeviceHostFile(
            device_memory_limit=safe_sizeof(pdf),
            memory_limit=safe_sizeof(pdf),
            worker_local_directory=tmpdir,
        )
        dhf["pa1"] = pdf
        dhf["cu1"] = cdf

        assert set(dhf.others.keys()) == set(["cu1"])
        assert set(dhf.device.keys()) == set()
>       assert set(dhf.host.keys()) == set(["pa1"])
E       AssertionError: assert set() == {'pa1'}
E         Extra items in the right set:
E         'pa1'
E         Full diff:
E         - {'pa1'}
E         + set()

dask_cuda/tests/test_cudf_builtin_spilling.py:90: AssertionError
================================ warnings summary =================================
dask_cuda/tests/test_cudf_builtin_spilling.py::test_device_host_file_step_by_step
  /datasets/pentschev/miniconda3/envs/rn-230103/lib/python3.9/site-packages/cudf/core/buffer/spill_manager.py:428: UserWarning: overwriting non-empty manager: (<SpillableBuffer size=24B spillable=True exposed=False num-spill-locks=0 ptr=0x7f383dc00200 owner=<rmm._lib.device_buffer.DeviceBuffer object at 0x7f3b9e64ddc0>>,)
    warnings.warn(f"overwriting non-empty manager: {buffers}")

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
============================= short test summary info =============================
FAILED dask_cuda/tests/test_cudf_builtin_spilling.py::test_device_host_file_step_by_step - AssertionError: assert set() == {'pa1'}
===================== 1 failed, 4 passed, 1 warning in 10.11s =====================

I can reproduce this locally (seen above) and #1069 is also failing on that test.

@madsbk are you aware of any changes that could have caused this?

@rapids-bot rapids-bot bot closed this as completed in #1071 Jan 3, 2023
rapids-bot bot pushed a commit that referenced this issue Jan 3, 2023
Probe `__cuda_array_interface__` in `test_device_host_file_step_by_step`, to get consistent results from `safe_sizeof()`.

Fixes #1070

Authors:
  - Mads R. B. Kristensen (https://github.com/madsbk)

Approvers:
  - Peter Andreas Entschev (https://github.com/pentschev)

URL: #1071
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant