sorear[m] changed the topic of #riscv to: Matrix users: #riscv:libera.chat will be ending operation NET Jul 25; please test #riscv:catircservices.org as a replacement | RISC-V instruction set architecture | https://riscv.org | Logs: https://libera.irclog.whitequark.org/riscv
<dzaima[m]> re: autovectorization demand - my intuition would be that it's really going the other direction, i.e. people will stop bothering writing assembly/intrinsics, especially with all the different targets (SSE, AVX2, AVX512, NEON, SVE, and now RVV) and with autovectorization being pretty good
<muurkha> dzaima[m]: those nicks look formatted the same way (and, FWIW, IRSSI doesn't highlight @libera_muurkha:catircservices.org as referring to me)
joev1 has quit [Ping timeout: 272 seconds]
<dzaima[m]> yeah, I see it in the IRC logs
joev1 has joined #riscv
<dzaima[m]> muurkha: I guess for now ascii names will have to do (i.e. can't use autocomplete or click on usernames in the log to auto-enter it as that gives the fancy pill which doesn't translate)
shoragan has quit [Quit: quit]
shoragan has joined #riscv
joev1 has quit [Ping timeout: 260 seconds]
joev1 has joined #riscv
shoragan has quit [Read error: Connection reset by peer]
shoragan has joined #riscv
<muurkha> dzaima[m]: I mean, the distribution of CPU time over pieces of code gets more and more skewed as data grows in proportion to processing power
aerkiaga has quit [Ping timeout: 245 seconds]
<muurkha> which means that today you could reasonably write 99% of your code in something ridiculously inefficient like CPython
<muurkha> or, if you prefer, OCaml or Typescript
<muurkha> with a minimally optimizing compiler
<muurkha> the other 1% (and shrinking) will be faster if you handwrite assembly for it instead of depending on autovectorization
<muurkha> and the performance gains are large enough for hyperscalers that it pays the salary of the guy writing the assembly
MarvelousWololo has quit [Ping timeout: 264 seconds]
<dzaima[m]> that's assuming companies bother thinking about whether that'd be worth the salary,.. or, like, bother profiling their code at all
<dzaima[m]> see: GTA-V O(n^2) JSON parser taking up 70% of the load times
jacklsw has joined #riscv
unsigned has quit [Read error: Connection reset by peer]
aerkiaga has joined #riscv
unsigned has joined #riscv
<dzaima[m]> there will always be a place for micro-optimizing significantly-used extreme hotspots, but the amount of boring code that noone will bother optimizing is expanding at scary speeds
<dzaima[m]> I don't really know if autovectorization can even help such often, but given the volume it certainly will in a lot of cases
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM_ has joined #riscv
stolen has joined #riscv
JanC_ has joined #riscv
JanC_ is now known as JanC
JanC has quit [Killed (mercury.libera.chat (Nickname regained by services))]
aerkiaga has quit [Remote host closed the connection]
vimer has joined #riscv
crabbedhaloablut has joined #riscv
joev1 has quit [Ping timeout: 240 seconds]
joev1 has joined #riscv
JanC has joined #riscv
Danidada has quit [Remote host closed the connection]
stolen has quit [Quit: Connection closed for inactivity]
JanC has quit [Ping timeout: 260 seconds]
JanC has joined #riscv
joev1 has quit [Ping timeout: 272 seconds]
joev1 has joined #riscv
JanC has quit [Ping timeout: 245 seconds]
JanC has joined #riscv
stolen has joined #riscv
sakman has joined #riscv
junaid_ has joined #riscv
Stat_headcrabed has joined #riscv
Stat_headcrabed has quit [Ping timeout: 246 seconds]
MarvelousWololo has joined #riscv
MarvelousWololo has quit [Read error: Connection reset by peer]
MarvelousWololo has joined #riscv
MarvelousWololo has quit [Read error: Connection reset by peer]
junaid_ has quit [Remote host closed the connection]
junaid_ has joined #riscv
BootLayer has joined #riscv
flip214 is now known as flip768
unsigned has quit [Ping timeout: 246 seconds]
junaid_ has quit [Remote host closed the connection]
<conchuod> Got my BeagleV Ahead today :)
unsigned has joined #riscv
<courmisch> muurkha: there are plenty of loops that would benefit from vectorisation but nobody bothers writing assembly for
<courmisch> muurkha: the big limitation for vectorisation in practice is that it tends to require ISA extensions that aren't enabled by default
<courmisch> x86-64 has SSE but not AVX, Armv8 has AdvSIMD but not SVE and RV has nothing by default
<courmisch> and you can't simply enable flags without dropping support for some CPUs
<sorear> should be using -march=native unless you're building binary packages for a distribution ...
<gurki> courmisch: a lot of math libs will ship binaries for everything including avx512 in 23
Stat_headcrabed has joined #riscv
Stat_headcrabed has quit [Client Quit]
ldevulder has joined #riscv
handsome_feng has joined #riscv
ldevulder has quit [Remote host closed the connection]
junaid_ has joined #riscv
junaid_ has quit [Client Quit]
ldevulder has joined #riscv
pecastro has joined #riscv
* pabs3 notes there are solutions for runtime instruction selection https://wiki.debian.org/InstructionSelection
<pabs3> guess none are really suitable for auto-vectorisation though
* pabs3 also notes that they necessarily work on all platforms, FMV isn't implemented on arm64 for eg
<pabs3> er s/they/they don't/
<courmisch> sorear: that eliminates a large chunk of potential uses
aerkiaga has joined #riscv
danilogondolfo has joined #riscv
aerkiaga has quit [Remote host closed the connection]
stolen has quit [Quit: Connection closed for inactivity]
jacklsw has quit [Ping timeout: 245 seconds]
Andre_Z has joined #riscv
joev1 has quit [Remote host closed the connection]
joev1 has joined #riscv
joev1 has quit [Ping timeout: 272 seconds]
joev1 has joined #riscv
JanC_ has joined #riscv
JanC has quit [Read error: Connection reset by peer]
JanC_ is now known as JanC
JanC has quit [Remote host closed the connection]
JanC has joined #riscv
JanC has quit [Remote host closed the connection]
JanC has joined #riscv
aburgess has joined #riscv
aburgess_ has quit [Ping timeout: 252 seconds]
billchenchina has joined #riscv
JanC has quit [Remote host closed the connection]
JanC has joined #riscv
handsome_feng has quit [Quit: Connection closed for inactivity]
JanC has quit [Ping timeout: 240 seconds]
<bjoto> conchuod: \o/ Is it setup? Curious on your first impression(s)!
FL4SHK[m] has left #riscv [#riscv]
unsigned has quit [Quit: .]
JanC has joined #riscv
<conchuod> Nah, not yet. Busy with $dayjob PR review for now :)
aerkiaga has joined #riscv
gordonDrogon has quit [Ping timeout: 240 seconds]
dani_ has joined #riscv
<gurki> is there an example how to use the mmio spike plugin with the most recent modifications to spike?
<gurki> im. uhm. confused
<gurki> this used to be straightforward. then commits happened. :D
gordonDrogon has joined #riscv
eroux has joined #riscv
vagrantc has joined #riscv
heat has joined #riscv
aerkiaga has quit [Remote host closed the connection]
prabhakar has joined #riscv
prabhakarlad has joined #riscv
heat has quit [Read error: Connection reset by peer]
heat has joined #riscv
BootLayer has quit [Quit: Leaving]
heat has quit [Read error: Connection reset by peer]
heat has joined #riscv
MarvelousWololo has joined #riscv
stolen has joined #riscv
dani_ is now known as Danidada
prabhakarlad has quit [Quit: Client closed]
Danidada has quit [Changing host]
Danidada has joined #riscv
Danidada has quit [Quit: Leaving]
Danidada has joined #riscv
aerkiaga has joined #riscv
heat_ has joined #riscv
heat has quit [Read error: Connection reset by peer]
BootLayer has joined #riscv
<courmisch> dzaima[m]: did I need to run something still?
TMM_ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
jacklsw has joined #riscv
TMM_ has joined #riscv
jacklsw has quit [Client Quit]
jacklsw has joined #riscv
<dzaima[m]> nothing from me; sorear was wondering if vl would affect it, but I don't know exactly what for that would be interesting to test
<Danidada> Hi, does anybody know if the Linux kernel 6.5rcs have the V extension support merged?
aerkiaga has quit [Remote host closed the connection]
<Danidada> Great, has someone tried compiling and running it on QEMU?
<palmer> yes
<Danidada> thanks, I'll give it a try then
Tenkawa has joined #riscv
vagrantc has quit [Quit: leaving]
flip768 is now known as flip214
awita has joined #riscv
<courmisch> sorear: https://pastebin.com/JCg9Br4t <- do you see something I don't see there. It's (slightly) slower than scalar equivalent (regardless of LMUL)
<courmisch> the only explanation I have is that vfredusum just sucks on that IP
<courmisch> which is pretty sad. I would understand the ordered version being slow, but the unordered one...
<sorear> the unordered one is still going to be a bit slower than a normal addition, partly because it has to do log2(VL) levels of reductions, and partly because it can't be combined into a vfmacc
<sorear> i think the usual approach for unordered reductions is to have an entire vector's worth of reduction variables, then combine them into a scalar at the end
<courmisch> scalar should do N additions
<sorear> wdym
<courmisch> so I should take the reduction out of the loop?
<courmisch> that will cause some border effects but fair enough
<sorear> yes. border effects?
<courmisch> well the last iteration won't fill a whole vector
<courmisch> I suppose that would be one rate use case for tail undisturbed
<courmisch> rare*
dani_ has joined #riscv
Danidada has quit [Killed (molybdenum.libera.chat (Nickname regained by services))]
dani_ is now known as Danidada
<sorear> afaik that is basically what tail undisturbed was added for
<courmisch> eh? whole register move
<courmisch> is the compiler assuming that the vector size is a divisor of 128?
<sorear> see command line options
<sorear> unfortunately, this is today's clang, it knows two things: "VL=VLMAX" and "scalar epilogue loop"
<courmisch> inb4 GCC vs LLVM flame war
<gurki> both are crap. use icc.
<gurki> am i doing this correctly?
<courmisch> looking forward to ICC support for RISC-V autovectorisation
<sorear> courmisch: if you select gcc and fix the command line options for it you get a nice shiny ICE, which wasn't what I wanted to show you
<courmisch> rotfl
<gurki> in a more related note: is there a # with spike ppl around?
<gurki> i really wonder why they made this call.
<sorear> which call?
<gurki> they heavily modified how to use the mmio plugin
<sorear> i'm not aware of spike-specific fora other than the bug tracker
<gurki> imho in a bad way, but they probably had reasons i dont grasp rn
<gurki> regardless, i have no idea how to use it in the current version :-\
<sorear> i didn't quite realize that rvv 1.0 also covers most of what sve2 does
<courmisch> where's my zip/unzip
<courmisch> surprisingly for a variable-length vector thingy, SVE2 even has transpose
jacklsw has quit [Ping timeout: 245 seconds]
junaid_ has joined #riscv
aerkiaga has joined #riscv
stolen has quit [Quit: Connection closed for inactivity]
___nick___ has joined #riscv
<conchuod> Esmil_: I pushed all the starfive clock bits out for LKP again. I might send Stephen a PR on Wednesday if it passes.
<Esmil_> conchuod: Cool, thanks
Esmil_ is now known as Esmil
hpa has quit [Ping timeout: 240 seconds]
awita has quit [Quit: Leaving]
___nick___ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
___nick___ has joined #riscv
___nick___ has quit [Client Quit]
___nick___ has joined #riscv
BootLayer has quit [Quit: Leaving]
EchelonX has joined #riscv
EchelonX has quit [Client Quit]
EchelonX has joined #riscv
heat has joined #riscv
heat_ has quit [Read error: Connection reset by peer]
junaid_ has quit [Quit: leaving]
junaid_ has joined #riscv
junaid_ has quit [Client Quit]
Danidada has quit [Quit: Leaving]
junaid_ has joined #riscv
cousteau_ has joined #riscv
danilogondolfo has quit [Remote host closed the connection]
junaid_ has quit [Ping timeout: 245 seconds]
heat has quit [Read error: Connection reset by peer]
heat_ has joined #riscv
___nick___ has quit [Ping timeout: 272 seconds]
vagrantc has joined #riscv
cousteau_ has quit [Quit: Quit]
crabbedhaloablut has quit []
JanC_ has joined #riscv
JanC has quit [Killed (zirconium.libera.chat (Nickname regained by services))]
JanC_ is now known as JanC
frkzoid has joined #riscv
frkazoid333 has quit [Ping timeout: 272 seconds]
zjason` has quit [Read error: Connection reset by peer]
zjason` has joined #riscv
joev1 has quit [Ping timeout: 246 seconds]
joev1 has joined #riscv
kilobyte_ch has quit [Ping timeout: 245 seconds]
Tenkawa has quit [Quit: Was I really ever here?]
joev1 has quit [Ping timeout: 260 seconds]
joev1 has joined #riscv
hrberg has quit [Ping timeout: 245 seconds]
JanC has quit [Ping timeout: 272 seconds]
hrberg has joined #riscv
JanC has joined #riscv
Andre_Z has quit [Quit: Leaving.]
Tenkawa has joined #riscv
joev1 has quit [Ping timeout: 272 seconds]
joev1 has joined #riscv
MarvelousWololo has quit [Ping timeout: 264 seconds]
pecastro has quit [Ping timeout: 246 seconds]