B2IA has quit [Quit: Vision[]: i've been blurred!]
B2IA has joined #haiku
<ermo[m]>
so, for the sake of argument: is there a recommended rootfs strategy for A/B system paritions (one "stable" and one "experimental") but with a shared $HOME and swap?
<ermo[m]>
s/paritions/partitions/
<ermo[m]>
And would that approach work when using the haiku boot manager?
<ermo[m]>
the context is that I have a single 120GB SSD that I'd like to use for both stable DailyDriver usage + be able to compile + deploy nightly w/patches images to the experimental partition and try to boot into that
<ermo[m]>
(rather than doing VM smoke-testing)
<ermo[m]>
I suppose it might be wiser to have just two partitions where the A partition contains both stable system and home (+swap?) and the B partition is its own thing, which is quick-formatted prior to each deployment
<ermo[m]>
Hm. Decisions, decisions.
<ermo[m]>
pointers welcome
<Begasus>
ermo[m], I dual boot my external drive with 32bit/64bit, HOME is on each install, what I 'do' is added a seperate partition which contains the sources for haikuports, not sure if that is what you have in mind
<Begasus>
I don't think you can have a common "home"
<ermo[m]>
The goal is to have a self-contained DD (which is used for building haiku) + a separate partition hosting the experimental (-march=native) builds I make, possibly including patches
<ermo[m]>
that I can then test and post for review and inclusion
<ermo[m]>
normally, you'd probably do that with a VM, but the box I'm dedicating to it is an older one with not a lot of RAM (8 GiB)
<ermo[m]>
and I'd like the option to physically boot into the experimental nightly image and do perf-tests relative to the non-native baseline
<ermo[m]>
* experimental (-march=native) haiku builds I
HaikuUser has joined #haiku
HaikuUser has quit []
diver1 has joined #haiku
Diver is now known as Guest922
diver1 is now known as Diver
Guest922 has quit [Ping timeout: 480 seconds]
_3dEyes has quit [Quit: Konversation terminated!]
_3dEyes has joined #haiku
_3dEyes has quit []
_3dEyes has joined #haiku
Anarchos has joined #haiku
<Anarchos>
i want to use a local variable whose type is the class 'Signature' , but it conflicts with the Signature method of a BApplication.
Hakuchi has left #haiku [#haiku]
<Begasus>
I want to enable the _tkinter module in python, but so far only python310 seems to pick it up ;)
<ermo[m]>
Anarchos: is it an option to define a local scopy type alias? Like `using _Signature = <full path to declaration of the not BApplication Signature type>` ?
<ermo[m]>
s/scopy/scope
<ermo[m]>
`using` type aliasing has been legal since C++11 (and Haiku appears to be on C++14)
<ermo[m]>
Not a c++ programmer, so don't yell at me if I got it wrong =)
<nekobot>
[haiku/haiku] 071f4aad57c7 - kernel/user_debugger: Show the thread name in addition to the id
mmu_man has joined #haiku
<ermo[m]>
<nephele> "Also, why are you using march=..." <- Because I want to.
<nephele>
Yeah, i don't see what you want to acomplish with that, which is why i asked
<ermo[m]>
full usage of the native CPU in essence.
<ermo[m]>
5-10% performance increases are commonplace (but 0% happens too)
<ermo[m]>
All x86_64 software is compiled to a "compatibility profile" in essence.
<ermo[m]>
Yes, sometimes you get SSE for specific code sections in multimedia code
<ermo[m]>
But the basic instruction set beyond x86_64 baseline is typically not used unless you compile for -march=native
<nephele>
did you disable debug mode?
<nephele>
that will give you much more "more speed"
<ermo[m]>
Ideally, I'd want to retain (the equivalent to) -g symbols, but I'd prefer it if it were possible to strip binaries, but keep the debug symbols around and load them separately if possible.
<ermo[m]>
(this is a very commonplace pattern in linux-land these days)
<ermo[m]>
but it typically implies having a separate debug-symbol storage area
<ermo[m]>
(which can be either local or remote/on-demand)
<ermo[m]>
... all of which I'm sure you're already very familiar with of course
<nephele>
Why strip them if you ship them anyway? it doesnt save any space
<nephele>
(which is why linux is stripping binaries in the first place)
JakeSays has quit [Ping timeout: 480 seconds]
<nephele>
I am already struggeling to compile all of haiku /with/ debug symbols... some stuff doesn't get them when enabled with Debug, and sadly the Debugger does not know about syscalls either so will always show them as assembly (while our strace /does/ know and correctly shows which syscalls are called)
euandreh has quit [Remote host closed the connection]
<ermo[m]>
nephele: Runtime wins vs. Debugging ability
euandreh has joined #haiku
<ermo[m]>
if they aren't loaded except when you fire up the debugger, you win
<ermo[m]>
(theoretically)
<nephele>
It might be neat if for release we indeed could strip binaries, and later on with the (then incomplete reports) and debug files reconstruct the complete reports
<nephele>
since users usually only save reports and cant do anything with them even if they are full that would give us some disk space saving for users who dont know what debug symbols are anyway
<ermo[m]>
linux has debuginfod
<ermo[m]>
perhaps haiku could use something akin to that?
<ermo[m]>
either download all debug symbols (install time opt-in toggle)
<nephele>
Don't know what it does, but i would imagine any server stuff for debug symbols would be in debug_server
<ermo[m]>
XOR download on demand when debugging is required
<nephele>
That seems too complicated honestly, we already have _debuginfo packages for haikuports packages
<ermo[m]>
devs and packagers could use the first, normal users the second?
<nephele>
just iirc not for haiku
<nephele>
(the haiku.hpkg itself i mean)
<nephele>
the Debugger will also prompt you to install debuginfo packages for packages if it can figure out which are required, that seems kind of what you want?
<nephele>
I mean, for runtime debugging this seems set, i am more talking about the case of users generating a report and that we should be able to make a more complete report out of it with debug symbols later :)
<nephele>
ermo: oh by the way, i did not mean debug symbols with "turn off debug" i was talking about compiling the system /in debug mode/, that is there is more protections enabled on nightlies and such to quicker catch bugs, but those loose some speed, those are behind a kernel debug var iirc
<nephele>
not sure what it is named exactly
<waddlesplash>
ermo[m]: SSE2 is already enabled by default for x86_64 in all compilers
<waddlesplash>
so, -march=native won't provide you with anything more on that front
<nephele>
Doesn't amd64 include SSE2 always anyway?
<Not-d5e4>
[haikuports/haikuports] korli 67ae6e9 - grpc: bump version
<ermo[m]>
waddlesplash: I was thinking of SSE3 SSSE3 SSE4.x
<waddlesplash>
not sure how much compilers really make use of those in general optimizations
<ermo[m]>
and some of the extra instructions for comparisons etc
<ermo[m]>
I used to run a -march=native linux system for comparison. In e.g. blender rendering, the difference between plain x86_64 and native was 12% in favour of -march=native
<ermo[m]>
(consistently)
<nephele>
Haiku tries to use faster code paths when available by auto detecting cpu features in places
<nephele>
probably not everywhere, but still... That can even be faster than letting the compiler do blind optimization
<ermo[m]>
and when I say -march=native, I mean from the kernel over libc to all userland
<ermo[m]>
Even plain phenom II (K10) has extra instructions that can yield performance gains if the the compiler emits them in assembly
<ermo[m]>
beyond the k8-based SSE2 etc. baseline x86_64(-v1)
<ermo[m]>
anyway, that said, the only thing that is really reliable is measurable gains
<ermo[m]>
so it's not that I'm trying to be intransigent
<ermo[m]>
I've just seen benefits first hand
<ermo[m]>
(not in Haiku yet obviously, as I only starting bulding stuff last night)
<ermo[m]>
*started
<nephele>
Haiku will never be compiled with march native, so for performance measurements that is probably not that usefull a metric
<ermo[m]>
if I run my own compiled version, it is to me
<nephele>
If you want it faster you can already make it much faster by disabling the debug that is deliberately turned on and makes the system slower, for releases the debug is relaxed a bit anyhow
<ermo[m]>
but I understand your point in the general case obviously
<nephele>
Yeah, it might be interesting to figure out if there are hot paths that get a major improvement, in that case one could write a patch that makes use of auto detected features for such a path
<ermo[m]>
of course =)
<ermo[m]>
greater good and all that
<nephele>
Yeah, it's nice that Haiku users in general are not assumed to have to compile their system themselves ;)
<nephele>
I do compile my system though, mainly severall hacks and some WIP patches for dark mode...
<nephele>
and of course debug output for libnetservices
<ermo[m]>
I'm half of a mind to propose a switch for the toolchain (i.e. similar to using -pipe via a switch for the toolchain ./configure run)
<ermo[m]>
but it'd depend on doing a couple of runs to see if it actually decreases compilation times.
<ermo[m]>
otherwise, it's just cargo cult on my part
<nephele>
You only need to compile the buildtools once
<nephele>
The normal build of haiku will skip parts that don't need to be recompiled if possible (doesn't work perfectly, sometimes it does do useless work, but generally)
Vitto has quit [Quit: Vitto]
Vitto has joined #haiku
Vitto has quit []
Vitto has joined #haiku
Vitto has quit []
wicknix has joined #haiku
w1ckn1x has quit [Ping timeout: 480 seconds]
JakeSays has joined #haiku
tqh has joined #haiku
x10z has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
eroux has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<nekobot>
[haiku/haiku] c35e9b906ac4 - ScreenMode: add some manufacturers
mmu_man has joined #haiku
x10z has joined #haiku
lorglas has joined #haiku
augiedoggie_ has quit [Ping timeout: 480 seconds]
X512 has joined #haiku
vdamewood has quit [Read error: Connection reset by peer]
x10z has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
vdamewood has joined #haiku
augiedoggie has joined #haiku
Diver has quit [Quit: Leaving.]
kescher has quit [Quit: Bye]
kescher has joined #haiku
lorglas has quit [Quit: Vision[]: i've been blurred!]
x10z has joined #haiku
x10z has quit []
jmairboeck has quit [Quit: Konversation terminated!]
B2IA has quit [Quit: Vision[]: i've been blurred!]
B2IA has joined #haiku
vdamewood has quit [Read error: Connection reset by peer]
vdamewood_ has joined #haiku
Atomozero has joined #haiku
Atomozero has quit []
Atomozero has joined #haiku
vdamewood_ has quit [Read error: Connection reset by peer]
vdamewood has joined #haiku
Atomozero has quit [Quit: Vision[]: i've been blurred!]
tqh has quit [Quit: Leaving]
vdamewood has quit [Read error: Connection reset by peer]
vdamewood has joined #haiku
AlaskanEmily has joined #haiku
DKnoto has quit [Ping timeout: 480 seconds]
JakeSays1 has joined #haiku
JakeSays has quit [Ping timeout: 480 seconds]
x10z has joined #haiku
HaikuUser has joined #haiku
<HaikuUser>
trying to create an application and display an image with the haiku api, looked at the showimage code but it's extremely large and complex. i can't figure it out, what do i need to do to load an image file (arbitrary format) and convert it/load it into a BBitmap?
Diver has joined #haiku
DKnoto has joined #haiku
X512 has quit [Quit: Vision[]: i've been blurred!]
x10z has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<jadedctrl>
HaikuUser: you can use BTranslationUtils to load a file into a BBitmap