GPU Resource Management On JDOSGPU Resource Management On JDOS 梁永清 liangyongqing1@jd.com 提供的服务 1. 用于实验的 GPU 容器 2.基于 Kubeflow 的机器学习训练服务 3.模型管理和模型 Serving 服务 Experiment Training Serving 均基于容器,不对业务方直接提供 GPU 物理机 GPU 实验 JDOS 常规的容器服务0 码力 | 11 页 | 13.40 MB | 1 年前3
hazard pointer synchronous reclamationunder synchronization/Hazptr.h Is Asynchronous Reclamation Always Enough? delete ptr shutdown_resource_X() Hazard Pointer Synchronous Reclamation Beyond Concurrency TS2 – Maged Michael Example: Removed reclamation ~Foo() { use_resource_X (); } Foo* ptr = new Foo; Remove ptr Is Asynchronous Reclamation Always Enough? No Asynchronous reclamation: delete ptr Using unavailable resource X Hazard Pointer Synchronous Michael Same example but using hazard pointer deferred reclamation ptr-retire() shutdown_resource_X() ~Foo() { use_resource_X (); } Foo* ptr = new Foo; Remove ptr Some use cases need synchronous reclamation0 码力 | 31 页 | 856.38 KB | 6 月前3
C++20: An (Almost) Complete Overviewthroughput;will be processed only once Comparable to precompiled header files (PCH) Custom headers can also be made importable, but how to is compiler dependent “How C++20 Changes the Way concept: mutex, latches, barriers, … Two types: counting semaphore: models a non-negative resource count binary semaphore: only has 1 slot, i.e. only has two states: free slot or no free slot with Y (memberwise) Advanced: Non-defaulted (then you also need to write an operator==) Custom implementation Choice of three return types: strong_ordering, partial_ordering, or weak_ordering50 0 码力 | 85 页 | 512.18 KB | 6 月前3
Working with Asynchrony Generically: A Tour of C++ ExecutorsP2300: STD::EXECUTION Proposes: • A set of concepts that represent: • A handle to a compute resource (aka, scheduler) • A unit of lazy async work (aka, sender) • A completion handler (aka, receiver) std::this_thread::sync_wait( std::move(work) ).value(); } Launch three tasks to execute concurrently on a custom execution context libunifex: https://github.com/facebookexperimental/libunifex7 EXAMPLE: LAUNCHING0 码力 | 121 页 | 7.73 MB | 6 月前3
KubeCon2020/大型Kubernetes集群的资源编排优化Resource orchestration optimization of kubernetes cluster in large scale Patrickxie ( 谢谆志) Background Cloud has been the general trend. How to manage so many clusters ,resources and businesses How to ensure load balancing of cluster nodes 1 2 Improper resource requests 3 Multi-tenant resource preemption How to expand horizontally more quickly and flexibly 4 Region1 How do you manage K8S scheduling is based on the resource request of Pod. However, in many cases, some nodes have low resource requests but high load, while some nodes have high resource requests but low load. Dynamic-Scheduler0 码力 | 27 页 | 3.91 MB | 1 年前3
Bringing Existing Code to CUDA Using constexpr and std::pmrC++17: • std::pmr::memory_resource • std::pmr::polymorphic_allocator • std::pmr::vector • std::pmr::monotonic_buffer_resource • … std::pmr 16 |// gpu unified_memory_resource mem; std::pmr::vectorstd::pmr::vector y(N, &mem); // … Memory Allocation 17 |struct unified_memory_resource : std::pmr::memory_resource { void* do_allocate(std::size_t, std::size_t); void do_deallocate( do_is_equal( const std::pmr::memory_resource& other) const noexcept; }; A Unified Memory Resource 18 |struct unified_memory_resource : std::pmr::memory_resource { void* do_allocate(std::size_t 0 码力 | 51 页 | 3.68 MB | 6 月前3
RustBelt - Rust 的形式化语义模型alias. P ∗ Q Separation Logic (Iris) P Q v x y P −∗ Q Magic wand Consuming resource “P”, we can reach resource “Q”. Q P what we acually own Logics (x ↦ v) ∗ (x ↦ w) ⟹ False (x ↦ v) ∧ (x0 码力 | 21 页 | 2.63 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理,就没必要去搞封装,只会让程序员 变得痛苦,同时还有一定性能损失:特别 是如果 getter/setter 函数分离了声明和定 义,实现在另一个文件时! C++ 思想: RAII ( Resource Acquisition Is Initialization ) 资源获取视为初始化,反之,资源释放视为销毁 C++ 除了用于初始化的构造函数( constructor ) 还包括了用于销毁的解构函数(0 码力 | 96 页 | 16.28 MB | 1 年前3
基于Rust-vmm实现Kubernetes运行时Why we love Rust-VMM? Rust-VMM is an open-source project that empowers the community to build custom Virtual Machine Monitors (VMMs) and hypervisors. It abstracts the common virtualization components0 码力 | 27 页 | 34.17 MB | 1 年前3
THE FIRST EXPLORATION OF PROJECT SPARROWrenode-run crate III. Sparrow Development https://github.com/jonlamb-gh/renode-run A custom Cargo runner that runs Rust firmware in the Renode emulator. Installation … … III. Sparrow0 码力 | 68 页 | 13.14 MB | 1 年前3
共 13 条
- 1
- 2
相关搜索词
GPUJDOShazardpointersynchronousreclamationC++20AnAlmostCompleteOverviewWorkingwithAsynchronyGenericallyTourofExecutorsKubeCon2020大型Kubernetes集群资源编排优化BringingExistingCodetoCUDAUsingconstexprandstdpmr王俊吉RustConf2023RustBelt高性性能高性能并行编程课件02基于Rustvmm实现运行李枫2023RustChinaConf__SparrowFengLi20230614aofficialtemplate













