HackerTrans
TopNewTrendsCommentsPastAskShowJobs

en4bz

no profile record

comments

en4bz
·geçen yıl·discuss
OpenGL and Vulkan are provided by the GPU vendor you can't statically link them.
en4bz
·3 yıl önce·discuss
Whiteboard coding almost always devolves into leetcode which also requires at home study. You're going to be spending evenings and weekends coding something in either case.
en4bz
·3 yıl önce·discuss
Haven't most plans moved to PPO since Obamacare. They usually allow you to just skip primary care nowadays.
en4bz
·3 yıl önce·discuss
Flatbuffers, Cap'n Proto, or SBE over RDMA.
en4bz
·4 yıl önce·discuss
I'm assuming you're referring to the golang model of statically linking everything. That's not really doable when many popular libraries are (L)GPL'd like glibc and libstdc++. It also doesn't work if you want to provide a shared library and need to be compatible with every possible system. That's not my opinion it's just a deficiency of bazel.
en4bz
·4 yıl önce·discuss
> bazel has provisions for patching stuff from http_archive if you supply a patch

That's a hack.
en4bz
·4 yıl önce·discuss
It's literally the default. How can the default be an anti-pattern. I doubt you're using C/C++ because you don't seem to understand the issue.
en4bz
·4 yıl önce·discuss
You're assuming you have control over all the deps and can set `linkstatic` on them.
en4bz
·4 yıl önce·discuss
qux is now forced to be static. Consumers should be able to choose whatever they want. I don't know what end users want to do.
en4bz
·4 yıl önce·discuss
The logic is backwards though. I may have multiple consumers of a library some of which may want static some of which may want dynamic. You need to create/import new targets to do this even though the original target creates both static and dynamic libs by default.
en4bz
·4 yıl önce·discuss
Non-Hermetic is the default for C/C++. And if you plan on using system provided libraries to support multi OSes then you can't use it.
en4bz
·4 yıl önce·discuss
None, bazel's caching implementation is broken because they don't even know or specify what constituents a build hash/key. See this issue from 2018 that's still open [1].

[1] https://github.com/bazelbuild/bazel/issues/4558
en4bz
·4 yıl önce·discuss
No, they are extremely broken. You can only choose:

- Link everything static.

- Link everything dynamic.

- Link user libs as static and system libs as dynamic.

There is no easy way to link a single user lib static/dynamic without resorting to hacks/workarounds like re-importing the shared library or defining weird intermediate targets. It's completely broken.
en4bz
·4 yıl önce·discuss
CUDA Driver API or Runtime API remoting?
en4bz
·4 yıl önce·discuss
That's the biggest problem with this model. With inference it's better to just use a dedicated model server. For training it's better to deploy on a massive dedicated machine. The only real use case left over is experimentation and debug for devs or students.
en4bz
·4 yıl önce·discuss
I doubt this does multi-server. All the GPUs probably have to be on the same machine.
en4bz
·4 yıl önce·discuss
Infiniband avoids the network stack. Has ~2us latency these days over LAN.
en4bz
·4 yıl önce·discuss
bazel is trash.
en4bz
·4 yıl önce·discuss
100% agree with this. There's nothing in the new standards past 17 that actually helps me in real life day to day work. Most of the new features are solely for code-golfers (see ranges). Mean while co-routines and other concurrency extensions have languished for years as TSs with only partial support. Here's the full list of TSs [1], half of which only have partial or no support despite being 5+ years old.

[1] https://en.cppreference.com/w/cpp/experimental
en4bz
·4 yıl önce·discuss
It's mostly run by code-golfers which is much worse.