Tuesday, 2022-06-07

ghostmansd[m]lkcl, let's speak in terms of tests or something reproducible00:20
ghostmansd[m]Please post the command to launch so that I can check00:20
ghostmansd[m]"this breaks files in media/" vs "this breaks test X launched by command Y" makes a huge difference :-)00:22
ghostmansd[m]I'll take a look today. The changes are inevitable anyway, because otherwise SVP64.py is acting inconsistently and, I'd say, somewhat surprisingly.00:23
ghostmansd[m]Also, I'd like the test to be as simple as `cmdX A.s B0.o` vs `cmdY A.s B1.o` incantations. Yes sure A.s can (and most likely should) be generated.00:26
ghostmansd[m]And, even before this, I'll add binutils tests.00:26
lkclghostmansd[m], https://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=media/README.txt;hb=HEAD00:58
lkclyou should find that the audio/mp3/mp3_0.sh tests work, the mp3_1.sh markos is working on00:58
lkclthe trail should be followable from the README.txt00:59
lkclwhen converting this01:00
lkclhttps://git.libre-soc.org/?p=openpower-isa.git;a=blob;f=media/audio/mp3/mp3_0_apply_window_float_basicsv.s;hb=HEAD01:00
lkcllines 63 64 66 67 72 73 75 76 96-98 101-104 115-117 120-123 and 143 144 146 and 147 will all need the "# " removed in front of them01:02
lkclif it's not entirely obvious let me know ok?01:11
ghostmansd[m]lkcl, star06:49
programmerjakelkcl, offered to pay jix: https://github.com/YosysHQ/yosys/pull/3319#issuecomment-114884492016:52
programmerjakei'm thinking maybe I could pay him out of the amount I'd get from nlnet16:53
programmerjakerather than jix having to go through all the nlnet obligations of being part of libre-soc16:54
programmerjakewas wondering if you think we should offer him more than eur 200...17:23
ghostmansdEach and every time I want to re-create the environment it's a f*cking pain. All these pinmux errors or some missing crap like sphinx addons or anything else. Any ideas on making it convenient?18:01
ghostmansdSeriously, with binutils, I never had any issues, it's sweet and simple. With _any_ attempts to have a fresh and sweet copy of say openpower-isa it's a pain, even if I clone all repositories.18:02
ghostmansdThe actual reason why I had to clone the repo again is stupid, but, still, it's a real f*cking pain compared to binutils.18:03
ghostmansdlkcl I know your opinion on docker, but perhaps there are alternatives? I simply would like to have an option to take an environment and work with it.18:04
programmerjakeonce we finish getting CI up and running, we could have a git repo with submodules set to the latest known-working commits...that might help18:04
ghostmansdThat'd be awesome. Cannot wait!18:05
ghostmansdThanks programmerjake!18:05
ghostmansdSeriously, for people who don't use venv on everyday basis it's difficult. Also, relying on bash scripts without even error handling... I'd say it's not the sanest option.18:06
ghostmansdAll this to bit shit out of some shell scripts working on mp3 files. Madness.18:07
lkclprogrammerjake, i saw, no that's a good idea (to pay directly).  more than EUR 200 is perfectly fine with me18:10
lkclghostmansd, the dev-env-setup scripts are supposed to "just work"18:11
lkclplus you should only need openpower-isa and really nothing else.18:11
lkclnot soc, not ieee754fp, not c4m-jtag, nothing18:11
ghostmansdyehyeh, except that you have to keep in mind that there's venv version for talos118:12
programmerjakelkcl, was asking because I don't have a good idea how much is appropriate...18:12
lkcl.... ermm.... ermermerm..18:12
ghostmansdand that you did `python setup.py develop`18:12
lkclprogrammerjake, i'd say likely up to EUR 500 would be reasonable?18:12
ghostmansdand any other crap inbetween :-)18:12
lkclghostmansd, the schroot script should still work on the talos1 workstation18:13
ghostmansdvenv works I think18:13
lkclsomeone tested the schroot dev-env-setup scripts a while back and...18:13
lkclexcept nobody i know of uses venv18:13
ghostmansdone of the parts that confused me a lot is when I launched `make wget` in the root (openpower-isa)18:14
lkclright18:14
lkclok18:14
ghostmansd...and not in openpower-isa/media18:14
lkclso that downloads a large file containing MPEG audio that is completely inappropriate to put into a git repository18:14
ghostmansdthen sphinx started beating the shit out of me18:14
lkclit's binary-formatted data and comes from ffmpeg18:14
lkclis this in the "main" (non-chrooted) repos?18:15
ghostmansdyeah now that I do it in media/ it seems to work18:15
programmerjakei always use a venv for libre-soc stuff18:16
ghostmansdhm, on talos I think I don't have chroot18:16
lkclghostmansd: sudo bash18:17
lkclno password required18:17
ghostmansd> All Libre-SOC dev dependenices should now be installed.18:17
ghostmansdOK should work on debian18:18
lkclbtw, please *under no circumstances* install arbitrary software "apt-get install of anything" on the talos1 workstation18:18
lkclit had to be set up using a bare-minimum debian/testing netboot.iso loaded to its BMC over the internet18:18
lkclyou really, *really* need to use schroots18:18
lkclhmmmm.... i need to do some base installs first, for you18:19
lkclok all good. debootstrap and schroot installed18:20
lkclso now it's safe for you to first run mk-deb-chroot {some_dev_name_of_some_kind}18:22
lkclthen "schroot -c {the_name_you_gave_the_schroot}"18:23
lkclthen *re*-clone the dev-env-setup (or cp -aux it in there manually, i do that all the time)18:23
lkcland then run whatever you like.18:23
ghostmansdok launching mk-deb-chroot18:24
ghostmansd$(make tests) is running in media/ at my debian VM18:24
ghostmansdtakes a while18:24
lkclyes, it will :)18:25
lkclon a basic laptop, ISACaller can only do about 250 instructions per second18:25
lkclon my laptop which is 4.8 ghz with an NVMe SSD it's more like 2,00018:25
ghostmansdiirc we had a task on new simulator, eh?18:26
ghostmansdin C18:26
lkcluhhuhn18:27
lkclwhich should be an astounding 300,000 instructions per second (about 1/4 of native CPU speed)18:27
lkclbut is limited to user-space execution only18:27
lkclbtw now you've got that trundling along, and it's not producing any errors, there is a short-cut18:29
lkclrun the .sh command manually18:29
lkcl1 sec...18:29
lkclcd media18:30
lkcl./audio/mp3/mp3_0.sh 0 /tmp/out018:30
lkcland if that works you're golden18:30
lkclprogrammerjake, there's quite a lot available still EUR 6550 unallocated on the parent, so do let jix know that there's plenty more, if interested to help more https://bugs.libre-soc.org/show_bug.cgi?id=19618:37
lkclghostmansd, btw feel free to use the "wall" command to annoy me back, on talos1 :)18:39
ghostmansdlkcl, ok :-)18:40
ghostmansdlkcl, I don't really get what I should do with $(./audio/mp3/mp3_0.sh 0 /tmp/out0)18:57
ghostmansd$(cmp /tmp/out0 data/audio/mp3/mp3_0_data/samples0) yields 0 as exit code18:57
ghostmansdaha OK, at least mp3_1.sh output differ, at least something to work with18:59
ghostmansdI re-read what you wrote, mp3_1.sh is a known issue, markos is working on it19:04
ghostmansdsorry, I'm way too slow today :-)19:04
ghostmansdOK, if I got it correctly, you think that after my changes we now have bad media/audio/mp3/mp3_0_apply_window_float_basicsv.s.sv file, right?19:12
ghostmansdyeah I see wildcard target which produce .bin files19:14
ghostmansd(if only everyone knew how I hate wildcards and other non-portable GNU make extensions)19:15
ghostmansdOK I'll check what's going on here19:15
ghostmansdlkcl, I don't observe differences upon running this in media/: $(rm -f audio/mp3/*.s.* audio/mp3/*.bin && make audio/mp3/mp3_0_apply_window_float.bin)19:22
ghostmansdhttps://pastebin.com/qvHDPYjr19:24
ghostmansdthat's how I checked it19:24
ghostmansdcould you, please, go into more details?19:24
*** kylel1 is now known as kylel20:03
lkclghostmansd, what that script does is it runs the c-version of the ffmpeg_apply_window_float.c program21:36
lkclproducing some output21:36
lkcland it then compiles the *svp64-assembler* variant of the *exact* same program21:37
lkclproducing some output21:37
lkcllike i said, you have to "unpack" this somewhat21:37
lkclexamine the contents of the script21:38
lkclare you familiar with Makefiles?21:40
lkclbasically by running "make tests" the four binaries have been constructed21:41
lkcl(the two we care about are for mp3_0)21:41
lkclone binary is the c version21:41
lkclone binary is the assembler version21:41
lkclnow look in audio/mp3/Makefile21:42
lkclyou see21:42
lkclmp3_1_test: mp3_1_main.c imdct36_standalone.c21:42
lkcl    gcc -o mp3_1_test mp3_1_main.c imdct36_standalone.c21:42
lkclthat's the c version21:42

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!