sorear changed the topic of #riscv to: RISC-V instruction set architecture | https://riscv.org | Logs: https://libera.irclog.whitequark.org/riscv
deflated8837 has quit [Remote host closed the connection]
deflated8837 has joined #riscv
pecastro has quit [Ping timeout: 246 seconds]
iooi has quit [Read error: Connection reset by peer]
iooi has joined #riscv
brazuca has joined #riscv
jacklsw has joined #riscv
Tenkawa has quit [Quit: Was I really ever here?]
catern- is now known as catern
rurtty has quit [Quit: Leaving]
<geist> question: is it fairly safe to say that any 64bit riscv implementation will a) fully support unaligned accesses without needing to trap to machine mode and b) will do it fairly efficiently?
<geist> it's my understanding that the architecture allows for unaligned, as long as software/firmware emulates it, but that would be sub optimal for say a memcpy/memset routine that assumes unaligned accesses are efficient
<geist> i think it may be safe to say that rv32 may be an embedded core, which possibly doesn't do unaligned efficiently, so it may make sense to have a more unaligned friendly routine there
<muurkha> I don't think you'd ever want to do unaligned access in memcpy, would you?
<muurkha> oh, I guess you would
<geist> right, yeah if the source/dest are not similarly aigned, if the cpu natively supports it reasonably well, it's generally assumed that you just align to the destination and then let it deal with it
<geist> vs a more complicated read/shift/or/etc logic which is probably slower
<muurkha> right, that's what finally percolated through my skull
<muurkha> just not soon enough to prevent my first IRC line from coming out :)
<geist> haha no worries
<geist> so i can see having two implementations of each, but was wondering if it's probably 'safe' to just assume rv32 is probably embedded and probably wants to not do unaligned, but anything rv64 can probably deal with it natively better
handsome_feng has joined #riscv
vagrantc has quit [Quit: leaving]
blakefelt has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
blakefelt has quit []
blakefelt has joined #riscv
blakefelt has quit [Client Quit]
lagash has joined #riscv
pabs3 has quit [Quit: Don't rest until all the world is paved in moss and greenery.]
lagash has quit [Quit: ZNC - https://znc.in]
pabs3 has joined #riscv
lagash has joined #riscv
billchenchina- has quit [Remote host closed the connection]
billchenchina- has joined #riscv
BootLayer has joined #riscv
billchenchina- has quit [Remote host closed the connection]
billchenchina- has joined #riscv
billchenchina- has quit [Ping timeout: 246 seconds]
pabs3 has quit [Ping timeout: 240 seconds]
lagash has quit [Quit: ZNC - https://znc.in]
catern has quit [Ping timeout: 250 seconds]
<geist> actually upon further reading, looks like at least the sifive cores up through u74 dont do misaligned accesses in hardware either, so really the assumption that rv64 == unaligned accesses is not true
freakazoid332 has joined #riscv
frkzoid has quit [Ping timeout: 252 seconds]
billchenchina- has joined #riscv
JanC has quit [Remote host closed the connection]
JanC has joined #riscv
<geist> and yeah can confirm that on sifive hardware at least opensbi is indeed silently trapping and emulating. took me a while to grok the opensbi unaligned trap handler code, since of course there's not any comments at all
billchenchina- has quit [Remote host closed the connection]
<geist> interesting, uses mstatus.mprv to access data in the lower modes. dunno precisely what happens when traps happen there, etc
<geist> but presumably it reflects those down to supervisor mode, i guess
<geist> but that's annoying: the unaligned accesse are silently handled without any ability for the supervisor mode OS to even know it's happening. i get the idea, but seems like there should be a way to request SBI not do it, or at least get some sort of counter of how many times it's happening. maybe the latter is via the performance counter stuff
lagash has joined #riscv
billchenchina has joined #riscv
<geist> benchmarking wise of course trapping an unaligned access are many orders of magnitude slower than not
pabs3 has joined #riscv
brazuca has quit [Quit: Client closed]
billchenchina- has joined #riscv
foton has quit [Ping timeout: 255 seconds]
billchenchina has quit [Ping timeout: 240 seconds]
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
<jrtc27> cross cache line unaligned accesses are annoying to support in hardware
billchenchina- has quit [Ping timeout: 256 seconds]
<jrtc27> both for being cross cache line and for being potentially cross page
foton has joined #riscv
brazuca has joined #riscv
billchenchina has joined #riscv
billchenchina has quit [Ping timeout: 246 seconds]
pecastro has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
catern has joined #riscv
billchenchina has joined #riscv
davidlt has joined #riscv
ldevulder has joined #riscv
brazuca has quit [Quit: Client closed]
lagash has joined #riscv
billchenchina has quit [Ping timeout: 248 seconds]
<geist> oh totally
MaxGanzII has quit [Remote host closed the connection]
MaxGanzII has joined #riscv
brazuca has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
MaxGanzII has quit [Remote host closed the connection]
Proudmuslim|[m] has quit [Quit: You have been kicked for being idle]
MaxGanzII has joined #riscv
MaxGanzII has quit [Client Quit]
lagash has joined #riscv
enoq has joined #riscv
prabhakarlad has joined #riscv
jacklsw has quit [Ping timeout: 276 seconds]
sh1r4s3 has quit [Remote host closed the connection]
Andre_Z has joined #riscv
MaxGanzII has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
foton has quit [Read error: Connection reset by peer]
foton has joined #riscv
midnight_ has joined #riscv
midnight has quit [Ping timeout: 255 seconds]
tlwoerner has quit [Read error: Connection reset by peer]
bauruine has joined #riscv
Stat_headcrabed has joined #riscv
Stat_headcrabed has quit [Client Quit]
brazuca has quit [Quit: Client closed]
balrog has quit [Quit: Bye]
balrog has joined #riscv
sh1r4s3 has joined #riscv
billchenchina has joined #riscv
rneese has quit []
rneese has joined #riscv
Tenkawa has joined #riscv
andyc has joined #riscv
<andyc> Hey Björn, just a moment, I’m about to send the v16 :)
billchenchina has quit [Ping timeout: 240 seconds]
billchenchina has joined #riscv
ldevulder_ has joined #riscv
ldevulder_ has quit [Remote host closed the connection]
ldevulder has quit [Ping timeout: 246 seconds]
ldevulder has joined #riscv
MaxGanzII has quit [Remote host closed the connection]
tlwoerner has joined #riscv
Leopold has quit [Remote host closed the connection]
MaxGanzII has joined #riscv
Leopold has joined #riscv
<bjoto> andyc: \o/ Does it show that I'm eager to get it in? :P
___nick___ has joined #riscv
BootLayer has quit [Quit: Leaving]
brazuca has joined #riscv
pedja has joined #riscv
BootLayer has joined #riscv
Andre_Z has quit [Ping timeout: 256 seconds]
brazuca has quit [Quit: Client closed]
brazuca has joined #riscv
vagrantc has joined #riscv
jacklsw has joined #riscv
<andyc> I read the air :))
rurtty has joined #riscv
EchelonX has joined #riscv
handsome_feng has quit [Quit: Connection closed for inactivity]
Andre_Z has joined #riscv
brazuca has quit [Quit: Client closed]
Stat_headcrabed has joined #riscv
lagash has joined #riscv
Stat_headcrabed has quit [Client Quit]
qwestion has quit [Ping timeout: 255 seconds]
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
<conchuod> Has anyone here run Xen on RISC-V hardware?
<bjdooks> not i, barely have anything with H mode
<conchuod> Who does
<conchuod> That being a rhetorical question
<courmisch> QEMU doesn't support H yet?
<dh`> qemu is hardware? :-)
<bjdooks> qemu does support the hypervisor stuff
<courmisch> dh`: what if you run Xen on system QEMU on RISC-V?
<conchuod> Yah, I'm only asking about hardware. Drewj isn't here I don't think, and I figure ventana are the likeliest..
aburgess_ has quit [Ping timeout: 246 seconds]
jacklsw has quit [Read error: Connection reset by peer]
prabhakarlad has quit [Quit: Client closed]
andyc has quit [Quit: Connection closed for inactivity]
EchelonX has quit [Quit: Leaving]
lagash has quit [Quit: ZNC - https://znc.in]
<palmer> conchuod: pretty sure gianluca_ is looking at it, not sure about HW
<conchuod> Yah, I heard he was ;)
<palmer> I think no HW though, but IIRC he knows some Xen folks so he might be able to check up?
<conchuod> It was the Xen folk that were asking
<conchuod> They didn't know, so figured I'd ask here in case drew was around
lagash has joined #riscv
bauruine has quit [Remote host closed the connection]
<palmer> ah, OK, I guess we've just gone in a circle then ;)
<palmer> Ventana's probably the best bet
KombuchaKip has joined #riscv
enoq has quit [Quit: enoq]
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
Xyz has quit [Read error: Connection reset by peer]
brazuca has joined #riscv
Xyz has joined #riscv
rneese has quit []
prabhakarlad has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
SpaceCoaster has quit [Quit: Bye]
pld has quit [Ping timeout: 248 seconds]
sm2n has quit [Ping timeout: 240 seconds]
catcream has quit [Read error: Connection reset by peer]
sumoon has quit [Read error: Connection reset by peer]
SpaceCoaster has joined #riscv
pld has joined #riscv
catcream has joined #riscv
rurtty has quit [Quit: Leaving]
sumoon has joined #riscv
sm2n has joined #riscv
catern has quit [Ping timeout: 250 seconds]
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
___nick___ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
___nick___ has joined #riscv
___nick___ has quit [Client Quit]
ldevulder has quit [Quit: Leaving]
___nick___ has joined #riscv
davidlt has quit [Ping timeout: 248 seconds]
prabhakarlad has quit [Quit: Client closed]
brazuca has quit [Quit: Client closed]
zjason` has joined #riscv
BootLayer has quit [Quit: Leaving]
zjason has quit [Ping timeout: 256 seconds]
prabhakarlad has joined #riscv
aburgess has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
brazuca has joined #riscv
___nick___ has quit [Quit: No Ping reply in 180 seconds.]
___nick___ has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
Andre_Z has quit [Ping timeout: 240 seconds]
catern has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
blakefelt has joined #riscv
blakefelt is now known as Molorius
lagash has quit [Quit: ZNC - https://znc.in]
lagash has joined #riscv
<Molorius> I have a design question. I am also working on misaligned access - for an M-mode build. This cpu can read/write/execute on one address space but only if 4-byte aligned, but has a different address space that goes to the same RAM that can read/write (not execute) on any alignment. For easier code it would be better to add a configurable offset (default 0) to traps_misaligned.c, but for portability it would probably be be
<Molorius> tter to create 4-byte handling functions. Which way would be better for the kernel?
___nick___ has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
MaxGanzII has quit [Ping timeout: 255 seconds]
sjs has quit [Remote host closed the connection]
rurtty has joined #riscv
sjs has joined #riscv
prabhakarlad has quit [Quit: Client closed]
simpl_e has quit [Remote host closed the connection]
simpl_e has joined #riscv
wingsorc has joined #riscv
wingsorc has quit [Remote host closed the connection]
wingsorc has joined #riscv
fdgdfgdfgf has joined #riscv
pedja has quit [Quit: Leaving]
rurtty has quit [Ping timeout: 255 seconds]
mps has quit [Remote host closed the connection]
mps has joined #riscv
lagash has quit [Quit: ZNC - https://znc.in]
vagrantc has quit [Quit: leaving]
lagash has joined #riscv