(no title)
blelbach | 5 years ago
libcu++ is a fork of LLVM's libc++, which we do not control. We contribute upstream and engage with that community.
libcu++ is an implementation of the C++ Standard Library, which is controlled by an ISO standardization committee, which has about ~300 members, 10 of whom work at NVIDIA.
> The same way I don't like them making software, I also don't like them selling CPUs or seafood. They are good at GPUs and that's OK.
We employ more software engineers than hardware engineers. We don't sell hardware, we sell software + hardware.
We manufacture and sell CPUs today. I like to think we're quite good at it.
> The drivers are usually running in the kernel space and do not involve much of interaction with users.
Incorrect. The core part of the driver, called the Resource Manager (RM), runs in the kernel space. Each different SDK (CUDA, OpenGL, Vulkan, etc) has its own "user mode driver", which is a shared library that interacts with RM. It's hard to say what the split is, but I'd say roughly half of what you think of as "the driver" is in user mode.
> Firmware, on the other side, is hardware-close software and can be gradually replaced by specific hardware continuous improvements without the user/software or the OS noticing.
Firmware runs on the GPU. You can't do everything from the GPU.
But neither firmware nor drivers have anything to do with the toolchain that you use to write heterogeneous programs. That's what this is a part of.
No comments yet.