I can’t remember if there’s anything like the hyenas in Hamlet, but I kind of don’t think so
Gravediggers at the Elephant Graveyard.
I can’t remember if there’s anything like the hyenas in Hamlet, but I kind of don’t think so
Gravediggers at the Elephant Graveyard.
Not: Gilgamesh is the oldest still surviving written story.
There was writing older than Gilgamesh. There were cities and culture before 2000BCE. Its just so old that nothing at all survived beyond that time period.
There's the Bronze Age Collapse, Burning of the Great Library, and many other events that destroyed history in the 1000BCE period. Those old people may have had older records than Gilgamesh, but all we have today is Gilgamesh if that makes any sense.
There’s an evil uncle and ghost dad visits
Evil Uncle who becomes king. Former King becomes a Ghost Dad after Hamlet/Simba goes crazy on drugs. Rosencrantz & Guildenstern (Timone and Pumba) jump in and provide 4th wall breaking commentary and comedy.
You seem to have missed quite a few references.
King Arthur isn't "one story" though. King Arthur is closer to 1100s-era fanart / fanfiction culture.
EVERYONE was making King Arthur stories back then. And guess what? They contradicted. That's why we have Excalibur vs Sword in the Stone (sometimes they're the same sword. Sometimes they aren't. Its a big contradiction because there's no singular author).
The Chinese Great Novel "Journey to the West" is truly one story by one author with multiple millennia of copycats. Meanwhile, King Author is basically a millennia of copycats without anyone knowing who the original was to begin with. Very different fundamentally.
Black Panther is clearly Hamlet in reverse.
Even got the spirit of ancestors / ghost scene, kings, wrong princes, duels and lots of killing.
The heros journey.
Its been copied so much no one really knows what the original was.
https://en.m.wikipedia.org/wiki/Hero%27s_journey#/media/File:Heroesjourney.svg
And typical RAM speeds are 100GB/second for CPUs and 500GB/second on GPUs, meaning 512MB operations are literally on the order of 5 miliseconds for CPU and 1ms on GPU.
Below certain sizes, the 'billions of intervals' is larger than the damn Bitmask. Seriously, 8 bytes per interval (aka one pointer and 0 data) and that's 8GB for the data structure.
Instead of a billion 32-bit intervals to store (4GB of RAM at the minimum) it's obviously a better move to store 500-million byte Bitmasks. And modern GPUs can crush that in parallel with like 3 lines of CUDA anyway.
Because CUDA and ROCm/HIP are far easier to program.
The Khronos competitor to CUDA/ROCm is SYCL not OpenCL.
SYCL vs these other options is a fun theoretical problem, but only Intel seems to be pushing SYCL at all. OpenCL got stuck in OCL1.2 (the 2.0 release was dead. 3.0+ OpenCL ignores OCL2.0 but it's too late, OpenCL is seen as a dead end tech these days).
The biggest issue is that OpenCL is a different language, while CUDA/HIP/SYCL are 'just' C++ extensions. This means that if you ever shared data between CPU and GPU in OpenCL (or DirectX or Vulkan for that matter), you have to carefully write and rewrite structs{} to line up between the two languages.
Meanwhile, CUDA/HIP support passing structs, classes and more between CPU and GPU (subject to conditions of course. GPUs can't do function pointers or vtables for example, but cpu-only classes can have vtables)
I'll agree with the exercise comments too. Its important from a psychological perspective. It may not feel like you're doing much, but... you need it in all cases. When you're feeling down like this, you can often forget to work on the basics (aka: eating healthy, working out, hygiene, and other health).
Great answer!!
After thinking about all this for a while, I've gone with the basic binary tree (leaning towards AVL tree as I expect my use case to be read heavy).
In my use case, multiple 'intervals' can merge together without major penalty (and should be merged together). It looks like a lot of these interval trees (including ph trees) are best when the intervals need to be kept separate.
There is a part of my algorithm where ph trees might be useful though. I'll have to give it some though.
I'm kind of shocked that a basic binary tree ended up being so usable. Its a classic for a reason, lol. I guess I saw the intervals and got confused and overcomplicated things....