Toolkit Issues On IRIX, I found the reason
#1
Toolkit Issues On IRIX, I found the reason
After studying the code of GTK1 and 2, I figured out a major reason why GTK1 and 2 apps are slow on IRIX:

IRIX, and the hardware underlining it do not support hardware accelerated antialiasing, or at least the routines that GTK relies on. Thus, GTK1 and 2 make calls to Cairo and Xrender that allow them to calculate it on the CPU.

I'm no expert here, but this is a major issue with these apps on IRIX from everything that I'm able to see. There's a few approaches we can probably take to optimize this:

1. We write an AA library for IRIX that can shim in and optimize the heck out of that to help get around the problem. 

2. Somehow have Cairo/Xrender bypass these requests and just live without AA. 

This won't resolve the other issues, namely with glib, or the fact that GTK2 especially expects a 32-bit X server with a single colormap, not a 24-bit X server with multiple colormaps. 

Alternatively, we just give up on GTK apps and go for apps using alternative toolkits. I have a sneaking suspicion that QT also uses similar AA routines though. Either way, as someone who thinks it's unacceptable to port an app that only runs on very fast machines, it's a major area of concern for me.

I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast. 

https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently. 

https://codeberg.org/SolusRaion -- Code repos I control

Technical problems should be sent my way.
Raion
Chief IRIX Officer

Trade Count: (9)
Posts: 4,239
Threads: 533
Joined: Nov 2017
Location: Eastern Virginia
Website Find Reply
03-12-2020, 04:21 AM
#2
RE: Toolkit Issues On IRIX, I found the reason
(03-12-2020, 04:21 AM)Raion Wrote:  After studying the code of GTK1 and 2, I figured out a major reason why GTK1 and 2 apps are slow on IRIX:

Actually, gtk1 is not that bad. In fact, it's okay. 2 was the really awful one.

In the early days they must have had a bunch of "how to re-write gtk1 for gtk2" tutorials, backporting might be another practical way to go ? I've seen a couple of projects where one guy re-wrote an entire motif app to gtk2 in a few weeks, by himself. Going backwards should not be much worse.

Altho if an optimized shim would work, that'd be nice. Except effing gtk2 is impossible to build in Irix past a certain point ... I forget what it was but it was about halfway to the end and a significant bitch to struggle with.  So maybe you'd have a nice shim but the *&^% applications would not build :(
hamei
broke-down old clunker

Trade Count: (0)
Posts: 380
Threads: 3
Joined: Jul 2019
Location: 上海
Find Reply
03-12-2020, 08:22 AM
#3
RE: Toolkit Issues On IRIX, I found the reason
That was resolved to a degree. It was found that some stuff in glib's GIO code was broken for IRIX. It may not be possible for the latest GTK2, but it's certainly possible to go beyond what we have in current nekoware.

I do not believe this is really good though. and as someone who has learned to program, I will never code for GTK. It's like coding for Windows. It's very obtuse. FLTK and FOX are a lot better on IRIX and hopefully we can have people target that instead.

I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast. 

https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently. 

https://codeberg.org/SolusRaion -- Code repos I control

Technical problems should be sent my way.
Raion
Chief IRIX Officer

Trade Count: (9)
Posts: 4,239
Threads: 533
Joined: Nov 2017
Location: Eastern Virginia
Website Find Reply
03-12-2020, 06:46 PM


Forum Jump:


Users browsing this thread: 1 Guest(s)