An error message if you put more than 2^24 items in a JS Map object
searchvoidstar.tumblr.com
searchvoidstar.tumblr.com
The pitfall was that because I did it in the Developer Tools console, the CPU and memory usage would shoot through the roof from the autocompleter if I wrote any code that would cause a string representation of the map to be printed as a helpful hint.
Apparently no one had ever tried to create more than 200 TPUs before (https://battle.shawwn.com/swarm-training-v01a.pdf). I was pretty proud of that.
(As a bonus, I actually wanted to use all 200 TPUs. It wasn't merely a stress test. Big data indeed!)
You can create up to 5 TPU v3-8's in europe-west4-a. Each core is roughly equivalent to a V100, so it's sort of like having 5 p3.16xlarge's. (The TPU has 96 CPUs and 330GB of system RAM, whereas a p3.16xlarge has 64 CPUs and 488GB of system RAM according to https://aws.amazon.com/ec2/instance-types/p3/).
The best part IMO is that you don't have to figure out how to link the cores together. JAX does that for you automatically. You get 100GigE from TPU to TPU too, which you can also leverage: https://twitter.com/theshawwn/status/1406171487988498433
but even in that code I think there was some error or inefficiency that I had to customize to make it usable. But in the end I was able to get around the 16 million limit on entries and good efficiency.
[0]: https://github.com/i5ik/futzz
[1]: https://github.com/i5ik/futzz/blob/master/src/futzz.js#L3
edit: So I looked and I think I didn't modify big-associative...could have been a library I used before I found that one.
Here's big-associative's repo: https://github.com/samchon/big-associative
You can try it yourself by loading a YouTube video via pasting into the URL box and letting it autoplay a few videos. The back button should take you to the new tab page. If you click anywhere on the page then those autoplay entries will not be skipped by the back button.
[0] https://bugs.chromium.org/p/chromium/issues/detail?id=907167
I incorrectly concluded that Node.js has a limitation on how much memory it could use. After reading this article, I now understand that the real reason is that I'm setting too many properties on an Object, exceeding V8's limitation.
https://www.python.org/dev/peps/pep-0515/
https://doc.rust-lang.org/rust-by-example/primitives/literal...
https://github.com/dotnet/csharplang/blob/main/proposals/csh...
First time I saw it was in C#, I love it personally
0_0: Legal in Java, legal in Python, illegal in JavaScript.
0__0: Legal in Java, illegal in Python, illegal in JavaScript.
0x_0: Illegal in Java, legal in Python, illegal in JavaScript.
0_, 0_.0, 0._0: Illegal in all three.
It wouldn't surprise me if C# and C++(14) have differing edge cases too.
Isn't digit (["_"] "0")* simpler?
Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 7.2.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: 01
File "<ipython-input-1-3351d58b1d3b>", line 1
01
^
SyntaxError: invalid token
In [2]: 0o1
Out[2]: 1
In [3]: 0o10
Out[3]: 8https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/nume...
https://caniuse.com/mdn-javascript_grammar_numeric_separator...
Example:
1e3 === 1000;
1e-3 === 0.001;
45.2e6 === 45200000;
I wonder where it started if it existed before Perl.
You can increase the limit by running `node --max-old-space-size=8192`. But that doesn't seem to fix this specific issue, either with the Map or the Object!
This is 1,398,101.333333333 octaves so I guess even starting at 1hz the top frequency is 2^1398101 hz.
Gamma rays are about 10^22 so the frequency is probably so high as to blow up the universe or something.
Perhaps an organ is the right answer instead, with one key per pipe rather than the usual multiplexing. The Wanamaker Organ makes a good start with 28,750 pipes across 484 ranks (though it multiplexes them across a paltry six manuals plus pedalboard), but you’re going to need to come up with a lot more sounds, and the speed of sound is low enough that it’s not going to work very well done acoustically. (Hmm… y’know, there’s actual scope for an art piece here, an organ but producing light instead of sound, like lidar is to sonar. I think you’d struggle to produce anything the human eye would appreciate, but it’s a fun concept.) Or perhaps it should be splitting each manual into one for each combination of sounds it controls. That might well go over the 2²⁴, I’m not thinking about the numbers too exactly.
Well, maybe we use 10e-absurdlyLargeNumber as our base note then, just to stay safe. Hm, how many years will we have to wait, till the lowest notes went through one cycle?
https://www.thoughtco.com/how-many-atoms-in-human-cell-60388...:
“According to an estimate made by engineers at Washington University, there are around 10¹⁴ atoms in a typical human cell”
⇒ it isn’t necessary to use “multi-cellular” there by a wide, wide margin.
Samsung is making 512 GB ram sticks.
(edit) on proceeding it redirects to a site that won't be found.
Rust's arrays of something can only have up to std::isize::MAX elements. But by choosing to store nothing instead of something, we can go larger to std::usize::MAX with e.g. [(); std::usize::MAX] and that'll actually work, at runtime, even on a modest computer since you don't need space for std::usize::MAX of anything.
If usize::MAX of a zero size type isn't enough for you, might I interest you in an Iterator that contains not merely usize::MAX but infinity of any Default type of your choosing? And if you don't need that many, you can always just take() fewer of them no charge.
I remember something about NSArray switching its layout (and speed characteristics) after adding certain number of items, but I can't find a reference now.