The 2024 Wheel Reinvention Jam just concluded. See the results.

[Approved] RISCY BUSINESS (RISC-V dev + live stream)

What is it?

A 1-2 hour livestream 5 days a week, archived on youtube, in which I develop a handmade toolchain for RISC-V.



Why?

Uncorrectable freedom and security issues on x86 platforms


When?
18:00-20:00 GMT Mon-Fri.

FAQ
  • Where can I watch RISCY BUSINESS?
    Livestream: twitch
    Archive: riscy.tv
  • How can I support the series?
    The series is entirely funded by money out of my own pocket, and donations from generous viewers. patreon.com/miotatsu.
  • Is there a place I can go to see the stream schedule?
    You can follow @hmn_riscy to stay in the know.
  • Where can I buy RISC-V hardware?
    RISC-V hardware is now available!
  • Define "toolchain"
    The broad vision is to have a complete development environment available on RISC-V better than what we have today on x86, x86_64, and ARM. My goal is to encourage the handmade community to support and develop on a RISC-V platform. To accomplish this, we will first explore the existing ecosystem to see what tooling already exists that we can use. Secondly, we will create a linux distro to cater specifically to the needs of the handmade community on risc-v. After this, we will replace any components that we don't want to use, or are unable to use on the platform. We will then develop a small systems programming language, and build tooling around it such as a compiler, debugger, profiler, etc. We may also build tools for C programming if we find what currently exists to be lacking. Only time will tell exactly what projects we end up tackling on the series!

Progress?
I'm working on getting ethernet strung up to my work room so that I don't have to rely on wifi.


Staff note: This project has been approved and is available at https://riscy.handmade.network/

Edited by Andrew Chronister on Reason: Approval notice
Could you link your twitch account in the post?

- Connor
Connor_Rentz
Could you link your twitch account in the post?


Linked :)
miotatsu
Connor_Rentz
Could you link your twitch account in the post?


Linked :)


Subscribed! :D

I think this is an excellent idea. Your reasons why also remind me of this thread by Agner Fog about the possibility of creating a new ISA.
Goodness me, this sounds incredible! Subscribed, followed, fallen a little bit in love, honestly, and set money aside for some RISC-V hardware (unless my Raspberry Pi 3B will be compatible?) to be bought with your guidance. Also, we can discuss this nearer show time, but if you'd like an annotated episode guide for your series you can email me at [email protected]
Kelimion
Your reasons why also remind me of this thread by Agner Fog about the possibility of creating a new ISA.

Ah yeah, I saw that! I haven't read through it all yet but it is definitely an exciting idea, and Agner Fog would definitely be the person for the job.

The main concern about the ISA being brainstormed there is that (I believe?) it isn't being designed for compatibility with what we have today. That is a fine long term strategy so hopefully it takes off, but it won't be something people will have in their machines any time soon. RISC-V is exciting in that it offers an open architecture that can run Linux, and we may have SoCs being produced as early as 2017.

IBM's POWER architecture is also interesting; Raptor Engineering is looking to produce a high end workstation, but that is $2-3K for what is essentially server grade hardware, which is a tougher sell. I'm pretty excited about RISC-V in that it is likely we'll be able to buy something roughly equivalent to a raspberry-pi within the next few years.


Miblo
Subscribed, followed, fallen a little bit in love, honestly, and set money aside for some RISC-V hardware (unless my Raspberry Pi 3B will be compatible?) to be bought with your guidance.

RISC-V hardware isn't available yet, but keep an eye on lowRISC. The majority of the show will not require custom hardware, as we can emulate a RISC-V system. Depending on the direction the show heads, playing with an FPGA might also be something we'll do, but I don't currently have plans for that.

Miblo
Also, we can discuss this nearer show time, but if you'd like an annotated episode guide for your series you can email me at [email protected]

Thanks for the offer! I'll keep that in mind as the show gets closer to being ready!

Edited by Neo Ar on
miotatsu
Kelimion
Your reasons why also remind me of this thread by Agner Fog about the possibility of creating a new ISA.

Ah yeah, I saw that! I haven't read through it all yet but it is definitely an exciting idea, and Agner Fog would definitely be the person for the job.


He's since started a new thread because the old one was becoming a bit unwieldy. It has been a fruitful effort however in that the spec is solidifying enough that he's put out some ISA documentation on a new site dedicated to this effort, as well as a GitHub repo.

miotatsu

The main concern about the ISA being brainstormed there is that (I believe?) it isn't being designed for compatibility with what we have today. That is a fine long term strategy so hopefully it takes off, but it won't be something people will have in their machines any time soon. RISC-V is exciting in that it offers an open architecture that can run Linux, and we may have SoCs being produced as early as 2017.


Sure, but the same can be said for RISC-V as well. It's not compatible with x86, ARM. MIPS or POWER either, to name but a few. Reading through the initial thread a while ago, I believe he was aware of RISC-V, but felt it didn't address all of the niggles he had with the x86 architecture.

miotatsu

IBM's POWER architecture is also interesting; Raptor Engineering is looking to produce a high end workstation, but that is $2-3K for what is essentially server grade hardware, which is a tougher sell. I'm pretty excited about RISC-V in that it is likely we'll be able to buy something roughly equivalent to a raspberry-pi within the next few years.


Leaving aside for a moment the question of whether or not everyone has the same concerns, I think both propositions offer value over the status quo. They're also facing an uphill struggle getting reasonable adoption, but as you point out here, RISC-V at least is close to having working hardware.

There's still another CPU design with a new ISA that I'm sort of kind of interested in, taking an altogether different approach to other extant and nascent designs, that being the Mill architecture designed by Ivan Goddard. The videos they've put out (linked from their site under docs), certainly show an interesting new way to think about CPU architectures.

Whether or not we'll actually see working hardware any time soon is anyone's guess. If they can live up to their claims about better ILP and the hardware offering a much better performance/Watt than existing solutions, I expect some of that fame to rub off on other clean rethinks ISA efforts. Although I've been following their developments with some interest since their announcement a few years ago, I'm going to treat it as if they announced an improvement in battery tech: it's always 5 years away. Until actual hardware starts being sampled, it's too soon for me to tell whether it's really a sea change waiting to happen or not.

Getting back to your proposed project however, one of the reasons I like it is that it's not entirely unlike an educational project for Handmade Network that I've had in mind doing for the past year. In that multi-stage effort I'd walk people through designing an ISA from scratch, implementing an emulator for said ISA, porting a toolkit and bringing up Linux, and then finally teaching low-level optimisations work. Well, that and/or doing much the same but emulating even wimpier hardware (roughly 386 equivalent ISA, but running at 16MHz with 16Mb RAM) and write something like a 'scene demo' as a vehicle for exploring low-level optimisation.

That would however be a multi-year effort, and it's unclear what level of interest there would be in it. I may end up having to pare down the stages to just the ones with the most interest, like just showing how to bring up Linux on new hardware, or how to port GCC to a new target. That or make it a cooperative effort with others, so that one project shows how to design an ISA from scratch. Another shows how to write an emulator from scratch and so on. We'll see. It's not as if it's the sort of knowledge that'll be less relevant going forward, so there's time yet to weigh the pros and cons of these ideas. (And I do have around 5 years worth of projects lined up already, not counting this one, so paring things down may be an inevitability).

In any event, I for one am looking forward to your project and would like to subscribe to your newsletter, as the saying goes.

Edited by Jeroen van Rijn on
Kelimion

He's since started a new thread because the old one was becoming a bit unwieldy. It has been a fruitful effort however in that the spec is solidifying enough that he's put out some ISA documentation on a new site dedicated to this effort, as well as a GitHub repo.

Awesome!

Kelimion

Sure, but the same can be said for RISC-V as well. It's not compatible with x86, ARM. MIPS or POWER either, to name but a few. Reading through the initial thread a while ago, I believe he was aware of RISC-V, but felt it didn't address all of the niggles he had with the x86 architecture.

I didn't mean binary compatibility but rather how difficult it would be to get existing code up and running on it. I could be completely wrong, however, since I haven't finished reading the threads, but my concern stems from this comment I saw on reddit. The architecture sounds a little bit more exotic than a typical processor and he's standardising things on the software side that contradict with what software for current architectures are using. Personally, I don't think that is a bad thing - a clean rethink might have big benefits for new software! The obvious drawback though is that it may not be easy to get existing software like Linux up and running on it, so I'm speculating that if the ISA takes off and chips are fabricated it would take some serious porting efforts or a lot of new software to be written from scratch to get a sound environment up and running. My impression is that the goal of the project is a clean rethink rather than an alternative to existing architectures like RISC-V.

Kelimion

Leaving aside for a moment the question of whether or not everyone has the same concerns, I think both propositions offer value over the status quo. They're also facing an uphill struggle getting reasonable adoption, but as you point out here, RISC-V at least is close to having working hardware.

Agreed.

Kelimion

There's still another CPU design with a new ISA that I'm sort of kind of interested in, taking an altogether different approach to other extant and nascent designs, that being the Mill architecture designed by Ivan Goddard. The videos they've put out (linked from their site under docs), certainly show an interesting new way to think about CPU architectures.

I've been following the Mill as well! The belt is a fascinating design. Ivan Godard also gets bonus points for looking like Gandalf ;D

My concern with the Mill however is less with the timescale and more that it is a proprietary architecture.

Kelimion

Getting back to your proposed project however, one of the reasons I like it is that it's not entirely unlike an educational project for Handmade Network that I've had in mind doing for the past year. In that multi-stage effort I'd walk people through designing an ISA from scratch, implementing an emulator for said ISA, porting a toolkit and bringing up Linux, and then finally teaching low-level optimisations work. Well, that and/or doing much the same but emulating even wimpier hardware (roughly 386 equivalent ISA, but running at 16MHz with 16Mb RAM) and write something like a 'scene demo' as a vehicle for exploring low-level optimisation.

I like your idea, perhaps we may collaborate in the future!

Kelimion

That would however be a multi-year effort, and it's unclear what level of interest there would be in it.
... (And I do have around 5 years worth of projects lined up already, not counting this one, so paring things down may be an inevitability).

I can relate to that. I've got tons of projects in the back of my mind and never enough time. When I started following along with handmade hero once it went live, I was initially working on my own game alongside it, but that stalled out once I got my current job and went full-time. With less free time I had to reevaluate my priorities regarding what I wanted to accomplish in the free time I do have, so I decided to switch gears and focus on this :)

Edited by Neo Ar on
miotatsu
Kelimion
Getting back to your proposed project however, one of the reasons I like it is that it's not entirely unlike an educational project for Handmade Network that I've had in mind doing for the past year. In that multi-stage effort I'd walk people through designing an ISA from scratch, implementing an emulator for said ISA, porting a toolkit and bringing up Linux, and then finally teaching low-level optimisations work. Well, that and/or doing much the same but emulating even wimpier hardware (roughly 386 equivalent ISA, but running at 16MHz with 16Mb RAM) and write something like a 'scene demo' as a vehicle for exploring low-level optimisation.
I like your idea, perhaps we may collaborate in the future!
Sounds like a plan. When I'm ready to move forward on it, I'll let you know :)
Who did the artwork for handmade network? I'd like to use it for my stream overlay if the artist is cool with that :) The main post has an updated mock-up for reference
miotatsu,

I'm sorry it's not easy to find, but https://handmade.network/press discusses artwork and usage. You plan to use it on your stream to refer to the site (and express solidarity), so that checks off our boxes. Feel free to use it.

Edited by Abner Coimbre on
abnercoimbre
miotatsu,

I'm sorry it's not easy to find, but https://handmade.network/press discusses artwork and usage. You plan to use it on your stream to refer to the site (and express solidarity), so that checks off our boxes. Feel free to use it.

Awesome, thanks Abner!

In other news, for those interested in the POWER architecture, Raptor Engineering has made a Crowd Supply page for their workstation
bump: RISCY BUSINESS is now active (well, test streaming motionbox debugging for now)

Hey miotatsu,

Congratulations for that first stream \o/.

Ok, I'm not 100% objective since it's about MotionBox... But yeah, the setup looks good.

I made some progress on the linux version, haven't commited anything yet though.

Edited by Benjamin Arnaud on
RISCY BUSINESS now has a trailer