Everybody gangsta still we invent hardware accelerated JSON parsing
https://ieeexplore.ieee.org/document/9912040 “Hardware Accelerator for JSON Parsing, Querying and Schema Validation” “we can parse and query JSON data at 106 Gbps”
I’m so impressed that this is a thing
Coming soon, JSPU
106 Gbps
They get to this result on 0.6 MB of data (paper, page 5)
They even say:
Moreover, there is no need to evaluate our design with datasets larger than the ones we have used; we achieve steady state performance with our datasets
This requires an explanation. I do see the need - if you promise 100Gbps you need to process at least a few Tbs.
Imagine you have a car powered by a nuclear reactor with enough fuel to last 100 years and a stable output of energy. Then you put it on a 5 mile road that is comprised of the same 250 small segments in various configurations, but you know for a fact that starts and ends at the same elevation. You also know that this car gains exactly as much performance going downhill as it loses going uphill.
You set the car driving and determine that, it takes 15 minutes to travel 5 miles. You reconfigure the road, same rules, and do it again. Same result, 15 minutes. You do this again and again and again and always get 15 minutes.
Do you need to test the car on a 20 mile road of the same configuration to know that it goes 20mph?
JSON is a text-based, uncompressed format. It has very strict rules and a limited number of data types and structures. Further, it cannot contain computational logic on it’s own. The contents can interpreted after being read to extract logic, but the JSON itself cannot change it’s own computational complexity. As such, it’s simple to express every possible form and complexity a JSON object can take within just 0.6 MB of data. And once they know they can process that file in however-the-fuck-many microseconds, they can extrapolate to Gbps from there
That’s why le mans exist, to show that 100m races with muscle cars are a farce
Based on your analogue they drive the car for 7.5 inches (614.4 Kb by 63360 inches by 20 divided by 103179878.4 Kb) and promise based on that that car travels 20mph which might be true, yes, but the scale disproportion is too considerable to not require tests. This is not maths, this is a real physical device - how would it would behave on larger real data remains to be seen.
There is acceleration for text processing in AVX iirc
You mean like simdjson?
Render the json as polygons?
That just results in an image of JSON Bourne.
It’s time someone wrote a JSON shader.
Would you rather have 100,000 kg of tasty supreme pizza, or 200 kg of steaming manure?
Choose wisely.
Careful, the 100,000 kg of pizza will turn into manure.
I figure I can probably convert about 10 kg into manure before it autoconverts into compost. Which is maybe even a worse problem.
The pizza can be used to feed some people but you really have to go fast and find hungry people
Manure can be sold easily
You jest, but i asked for a similar (but much simpler) vector / polygon model, and it generated it.
Well, do you have dedicated JSON hardware?
There were XML DOM accelerators for a while. Might still be out there.
The obvious solution is parsing jsons with gpus? maybe not…
Given it is a CPU is limiting the parsing of the file, I wonder how a GPU-based editor like Zed would handle it.
Been wanting to test out the editor ever since it was partially open sourced but I am too lazy to get around doing it
As far as my understanding goes, Zed uses the GPU only for rendering things on screen. And from what I’ve heard, most editors do that. I don’t understand why Zed uses that as a key marketing point
To appeal to people who don’t really understand how stuff works but think GPU is AI and fast
I’ve never had any problems with 4,2 MB (and bigger) json files. What languages/libraries/editors chokes on it?
Notepad
Let it be known that heat death is not the last event in the universe
Reject MB, embrace MiB.
You’ve got them confused, MiB is the one misusing metric
It isn’t misusing metric, it just simply isn’t metric at all.
Rockstar making GTA online be like: “Computer, here is a 512mb json file please download it from the server and then do nothing with it”