mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kevin Klues <>
Subject Re: Review Request 48374: Added class to share Nvidia-specific components between containerizers.
Date Thu, 23 Jun 2016 16:34:13 GMT

This is an automatically generated e-mail. To reply, visit:

(Updated June 23, 2016, 4:34 p.m.)

Review request for mesos and Benjamin Mahler.


Rebased after some changes pushed to master already.

Bugs: MESOS-5562

Repository: mesos


Previously, the `NvidiaGpuAllocator` component was created directly
inside the `NvidiaGpuIsolatorProcess` even though it was designed to
be used by multiple containerizers at the same time. To allow for
simultaneous access, we created a new `NvidiaComponents` class to hold
a reference to a shared `NvidiaGpuAllocator` instance and pass it to
each containerizer as it is created. This component can easily be
extended to include more cross-containerizer components later on.

We create the `NvidiaComponents` instance inside
`Containerizer::create()` and pass it to both the docker containerizer
and the mesos containerizer when they are created.  The docker
containerizer currently doesn't do anything with this information, but
its interface has been updated to accomodate it. The mesos
containerizer has been updated to pass this all the way down to the
`NvidiaGpuIsolatorProcess` and exploit it.

Diffs (updated)

  src/ 23cac95a805e46d216e9479fea09f2c1619c45a5 
  src/slave/containerizer/containerizer.cpp 5dc545bd201dca7d751ac4e7dd09d4eac07d428e 
  src/slave/containerizer/docker.hpp 9b0a5a76e457006119e657ee8f627dcd1326c0ce 
  src/slave/containerizer/docker.cpp 514268fd84507eafa11fc57d38a23b0502f80ef8 
  src/slave/containerizer/mesos/containerizer.hpp a1a00020668f6da8d611f26e5637afffc87d09ba

  src/slave/containerizer/mesos/containerizer.cpp d984efd4742ec084d66538c48a36ea768832324d

  src/slave/containerizer/mesos/isolators/gpu/components.hpp PRE-CREATION 
  src/slave/containerizer/mesos/isolators/gpu/nvidia.hpp 28ad0b3d1d8e7642a93e4ebb0fcc399e182be393

  src/slave/containerizer/mesos/isolators/gpu/nvidia.cpp cfb23244d0e6f6e0d94685a35826b35f3297c6fe



GTEST_FILTER="" make -j check && sudo GTEST_FILTER="*NVIDIA*" src/mesos-tests


Kevin Klues

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message