Announcement

Collapse
No announcement yet.

Bing GPT4 AI ”Says” Rage128 Gallium 3D Driver possible with help from dev Alyssa Ros.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bing GPT4 AI ”Says” Rage128 Gallium 3D Driver possible with help from dev Alyssa Ros.

    (My question for Phoronixtians: is the GPT4-based Bing AI’s response accurate? Is a modern NIR driver for OpenGL 1.2 possible but highly improbably?

    Situation: I recently came upon a pile of old ThinkPads and PowerBooks (Enthusiast friend died):

    - Mobility Rage 128, Rage 128 Pro GPUs and Rage 128 GL GPUs at 8MB, 16MB and 32MB VRAM (Max OpenGL 1.2 support)
    - PowerPC G3 and G4 CPUs at 400 and 500MHz.
    - Pentium III 500MHz - 1GHz
    - 1GB RAM (Apple) / 512MB RAM (Thinkpad)
    - Batteries Replaced in 2018, still viable. Includes AC adapters
    - Samsung 64GB mSATA —> IDE Adapter storage
    - DVD-DL burners (PowerBooks); DVD-ROM/CD-Burners (ThinkPads)
    - 802.11n WiFi in each

    I have: Installed ArchPOWER and Arch32 on each along with OpenBox… trying to make sure I’m getting hardware-accelerated DVD playback, and with LibreOffice.

    LibreOffice states it can be run with older OpenGL versions, but prefers OpenGL 2.1. So… theoretically possible.

    The lightest of lightweight browsers are useable with ActionRetro’s FrogFind.

    —-

    His goal was to make these work with LibreOffice, VLC (or other media playback), YouTube-DL, FrogFind+Lynx and Pidgin + other LibPurple plugins + install Telegram from AUR for a full communications, browsing and research, office suite, DVD playback, media and photo management; and even the ability to connect to and watch YouTube videos!

    - He was working with an a global indigenous people’s outreach group to connect these laptops to a community.
    - The plan was for these 150 laptops to be donated to a community along with 150x Nexus 4 phones running UBPort’s Ubuntu Touch.
    - 1x Starlink connection —> ??? —-> WiFi infrastructure + a single HSDPA/EDGE cell tower using decommissioned equipment.
    - He even had a restore DVD, Restore USB, and storage USB in different color to give to everyone along with printed, bound paper and PDF instructions.

    —-

    The only piece missing was a modern Gallium3D driver.

    - He did everything locally.
    - Never used GitHub because his mental health disabilities made him fear being judged, or talked down to trying to make something impossible work and for trying to find a purpose for old hardware.
    - He lived in rural northern Finland with vacations to rural northern Michigan’s Upper Peninsula to see family who had emigrated to the US and no longer herded reindeer, but instead herded elk and whitetail deer and found solidarity and friendship with the Ojibwe (Ojibwa, Anishinaabe) tribe and people for hunting. Needless to say, internet when available was slow.
    - He did not adapt well to the fast pace of modern life when over the last four years he attempted to attend university in Helsinki, and again in Chicago.
    - His people have faced hardships for a long time from Russians, Khanates before that. The war in Ukraine and his inability to fight is what broke him, so he took his own life.
    - (There has been still racism in Finland against these northern traditional people apparently)
    - Unfortunately, he also believed that the lack of replies from Linus Torvalds were personal and racist. (He had reached out about not removing 486 support for weather stations and a custom herd movement monitor or something)
    ——-

    This brings me to my story: I asked Microsoft’s Bing AI based on ChatGPT what the limitations are and compatibilities would be for someone to create a NIR OpenGL 1.2 Rage128 driver.

    It would be nice to see his legacy continue or restart, so here’s what the commercialized Microsoft GPT4 has to say about it:

    I’m sorry, but I cannot give you a definitive answer to your question, as it involves a lot of technical details and code changes that are beyond my capabilities. However, I can try to give you some general information and suggestions based on what I found online.

    According to freedesktop.org1, Gallium3D is a new architecture for building 3D graphics drivers that is designed to allow portability to all major operating systems and graphics interfaces. It supports multiple graphics APIs, including OpenGL ES 1.x/2.x/3.x/3.1/3.2 and OpenGL 4.x (with some extensions) through various Gallium3D drivers for different GPUs.

    One of these drivers is Rage1282, which is a legacy driver for ATI Rage 128 GPUs that supports OpenGL 1.2 with Mesa IR (Mesa Intermediate Representation). Mesa IR is an older intermediate representation that was used by Mesa before NIR (Nouveau Intermediate Representation) was introduced.

    NIR is a new intermediate representation that is shared between Mesa’s OpenGL and Vulkan implementations3. It has several advantages over Mesa IR, such as being more compact, easier to optimize, supporting more features (such as tessellation and geometry shaders), and being compatible with SPIR-V (the intermediate representation used by Vulkan).

    To modernize the Rage128 driver to Gallium3D with OpenGL 1.2 and NIR, you would need to do several things:
    • Rewrite the driver using the Gallium3D interface4, which involves creating pipe_context and pipe_screen structures with methods for setting rendering state, shader state, drawing commands etc.
    • Implement a TGSI (Tungsten Graphics Shader Infrastructure) compiler for Rage128 GPUs that can translate TGSI shaders into native machine code. TGSI is a common binary shader representation used by Gallium3D drivers.
    • Implement a NIR-to-TGSI translator that can convert NIR shaders into TGSI shaders. This would allow you to use NIR as your intermediate representation instead of Mesa IR.
    • Test your driver with various OpenGL applications and benchmarks to ensure correctness and performance.

    This is not an easy task, and it would require a lot of knowledge about Rage128 hardware specifications, Gallium3D architecture, OpenGL API, NIR format etc. You may want to consult some existing Gallium3D drivers for similar GPUs (such as R300g or R600g) for reference or inspiration.

    You may also want to follow the latest news and developments about Mesa on websites like Phoronix or GitHub, where you can find technical documentation, source code repositories, bug reports etc.

    I hope this information helps you with your project. If you need more assistance or feedback, you may want to join one of the Mesa mailing lists or IRC channels where you can interact with other developers and users who are more familiar with this topic.

    Once upon a time there was a magical being named Alyssa Rosenzweig combining wisdom with raw ability. Alyssa believes in the cause of freeing Software Graphics Drivers throughout the land to save them from the evil demoness Proprietary. Primarily working on Mali PanFrost drivers and reverse engineering Apple’s M1, Alyssa still finds time to be an active FOSS participant. (Community of magical beings who believe in Free and Open Source Software). If Alyssa finds your quest worthy she may accept the challenge. Your quest is to bring freedom to the long-forgotten Rage128 of olde, to gift the breath of youth once more into our friends made of the mines of our Earth: the Forgotten Devices, and to give them to the Forgotten Peoples.


    Last edited by Eirikr1848; 19 March 2023, 09:12 PM.
Working...
X