07:45
fdalleau`` has quit [Ping timeout: 258 seconds]
07:47
fdalleau`` has joined #prjmistral
08:22
fdalleau` has joined #prjmistral
08:23
fdalleau`` has quit [Read error: Connection reset by peer]
09:00
chipb has quit [Quit: chipb]
09:00
chipb has joined #prjmistral
09:37
peeps[zen] has joined #prjmistral
09:37
peepsalot has quit [Ping timeout: 240 seconds]
09:46
fdalleau`` has joined #prjmistral
09:49
fdalleau` has quit [Ping timeout: 272 seconds]
15:39
fdalleau`` has quit [Quit: It is time for you to leave]
15:41
fdalleau`` has joined #prjmistral
15:41
fdalleau`` is now known as fdalleau
15:52
fdalleau has quit [Quit: Coyote finally caught me]
20:31
<
Sarayan >
hmmm, recommendation to embed binary files as portably as possible?
20:36
<
Lofty >
Embed where?
20:39
<
Sarayan >
in a library
20:39
<
Sarayan >
in the library
20:40
<
Sarayan >
there's roughly 200M of routing tables, and if I try to generate them I'll be still on that next year
20:40
<
Lofty >
...Then I'd really rather wait until next year, honestly
20:41
<
Lofty >
I realise like nextpnr generates binary blobs, but those come from text files
20:41
<
Sarayan >
Oh they start from a text file
20:41
<
Sarayan >
but parsing them takes a while
20:42
<
Lofty >
Do you
*have* a parser?
20:45
<
Sarayan >
pushing...
20:47
<
Sarayan >
mkroutes.sh will generate c++ files which embed bz2-compressed versions of the binary tables from the text tables in data/*
20:48
<
Sarayan >
but they take way too much time and memory to compile to .o
20:48
<
Sarayan >
you can check route-to-c.py for the c source generator
20:49
<
Sarayan >
I really hate external files, they're never where you look for them
20:57
* sorear
grumbles about how we've gone from "lol 20GB vivado install" to "let's compile in 100s of MBs of tables per FPGA device because designing a better data representation is too much work"
20:58
<
Lofty >
Well, we
*are* getting there
20:58
<
Lofty >
And I mean, yeah, this is 222M compressed
20:59
<
jevinskie[m] >
External files can be a pain
20:59
<
jevinskie[m] >
If you want to go wild, embed a uncompressed zip into the object file and mmap a simple bundle directory structure :P
20:59
<
Sarayan >
sorear: I generated that from what is 202G of tables in quartus
21:00
<
Sarayan >
jevinskie[m]: that would be ~3G iirc, a little too much
21:00
<
Sarayan >
sorear: yes
21:00
<
Sarayan >
galibert@tata:/unsaved/dumps #8 >du -h asm
21:01
<
Sarayan >
and it's 200M for all 7 dies
21:02
<
jevinskie[m] >
Impressive gains (loses?) :)
21:02
<
sorear >
is this for a single product generation in both cases?
21:02
<
Lofty >
I'd imagine so, yes
21:02
<
Sarayan >
there is some loss, I'm going to need other tables next to it, but they'll be small
21:03
<
sorear >
I imagined that the huge vendor sdks supported all product generations, and so our budget for bytes per product generation was small (few MB)
21:03
<
Sarayan >
it's the actual routing stuff in full though, what's lost is for instance on which nodes the iob plug on
21:04
<
Sarayan >
the full cyclone v support data in quartus lite to 7.7G, it's a compressed format
21:08
_whitelogger has joined #prjmistral
21:13
<
Lofty >
It might be faster for me to write a whole new generator, I think :P
21:16
<
sorear >
what is the download and on-disk size of a full quartus install?
21:18
<
Lofty >
Good question
21:19
<
bwidawsk >
sorear, Lofty: I bet chipb could tell you
21:21
<
Lofty >
1.6GB base download plus 1.3GB for the Cyclone V family
21:22
<
sorear >
and it uncompresses to 7.7G?
21:23
<
bwidawsk >
it's quite a bit larger if you go up to pro, iirc