Tuesday, 2022-01-25

alMalsamoWhy was the openPOWER ISA chosen instead of RISC-V or OpenRISC?01:41
lkclalMalsamo, hi, nice to hear from you: welcome.02:37
lkclit's a very good question, that needs some background.  it's partly technical, partly resource, partly just "people being supportive and understanding" vs "people being spiteful and deeply unethical"02:39
lkclon the technical side, the best independent explanation i've encountered is this:02:39
lkclhttps://news.ycombinator.com/item?id=2445931402:39
lkclit summarises as:02:40
lkcl* RISC-V went too far on the "Reduced" part of (R)educed (I)nstruction (S)et02:41
lkcl* therefore whilst it is perfect for simple embedded uses, at the actual *ISA* level it is "damaged beyond repair".02:43
lkcl(in other words, to correct the Einstein-level "things should be as simple as possible but no simpler" mistake, you would actually have to start from scratch and call it "RISC-VI"02:43
lkcl)02:43
lkcl* the Power ISA on the other hand was designed for Supercomputing from the ground up02:44
lkcl(it's by no means perfect, but its supercomputing pedigree, as evidenced by IBM's long-standing committment, should tell you a lot without it having to be spelled out)02:46
lkclnow02:46
lkclaround 26 months ago we did a comprehensive evaluatio of ISAs.  OpenRISC was evaluated.  bear in mind: we needed to add Cray-style Vectors, we needed a strong Supercomputing-class ISA to start from, with a strong community and good take-up02:48
lkclOpenRISC unfortunately fails some of those criteria, some of them only indirectly02:48
lkclfor example: the only OpenRISC implementations in hardware that we could find are 32-bit and they are very very slow (very limited clock rate)02:49
lkclwhereas (and i do realise this is retrospective) IBM released the 64-bit A2O and A2I cores, and they're possible to run at a stunning 3.5 GHZ.02:50
lkclthe highest speed any OpenRISC ASIC has ever achieved is i think... 400 mhz?02:51
lkclyou should be seeing a theme here in the logical chain of deductive reasoning: that if something is successful and proven, and is similar to what you want to achieve, then for goodness sake follow the trail that's already been blazed!02:52
lkcland IBM has blazed a stunning trail of success with POWER9 - if you look at the top500 supercomputer list, 2 out of the top 3 use POWER9 processors.  several hundred thousand in each supercomputer.02:54
lkclwhich is the "resources" thing.02:54
lkclwe're funded by (relatively small) mini-grants from NLnet.  nobody in their right mind would, under "normal" funding circumstances, consider doing what we're doing, with (relatively) so little money02:55
lkclthis means that we 8have* to make some very draconian - and in some cases not very "nice" (as far as Open Source "Community" is concerned) decisions - to conserve the resources that we've got, and make some really hard but pragmatic decisions02:57
lkcland, also, substitute "creative intelligence" for "raw brute-force money"02:57
lkclan absolutely classic counter-example to illustrate there would be the Google Project Ara (formerly Motorola Project Ara)02:58
lkclgoogle dropped 240 *MILLION* dollars to *FAIL* to create a modular smartphone.02:58
lkclthey failed precisely because they threw so much money around that their "partners" got greedy.02:59
lkclused the money to get patents on the very technology that was supposed to be "open", and screwed the entire project as a result03:00
lkclnow, it turns out that we've simply "lucked out" on some things. we originally *did* pick RISC-V!03:01
lkclbut because we were a small team, funded by NLnet with only a EUR 50,000 Grant at the time, and under "Transparency Conditions", we could not become a member of the RISC-V Foundation because it is a conflict of interest03:03
lkclsorry, currection, s/but because we were a small team, /we were a small team/03:04
lkclbut, because we were a small team, relatively new, when we explained that signing the Membership Agreement would be a conflict of interest, we were met with stone cold silence03:05
lkcli won't search online for the messages that i sent to the Directors of the RISC-V Foundation and cc'd public mailing lists: you can find them for youreslf and see that they failed to respond, systematically and repeatedly.03:06
lkclafter *eighteen months* of disrespectful total silence - which is a direct violation of Trademark Law - we realised that if we continued to use RISC-V it would jeapordise our chances of success, and that in turn would embarrass NLnet, who had been funded by the European Union03:07
lkclso we *had* to make a very brave decision to pick an alternative ISA03:08
lkcland just at the time that we were evaluating ISAs, the OpenPOWER Foundation announced that it had opened up the Power ISA03:08
lkclit turns out that the person i wrote to was a long-standing associate and friend i hadn't been in touch with for 20 years: Hugh Blemings03:08
lkclHugh is an extraordinarily conscientious person who told me that he and several other people had been working for *ten years* inside IBM to walk them through the process of opening up the Power ISA03:10
lkclbut IBM wanted to get that RIGHT, and that is why it (literally) took ten years to do03:10
lkcl(remember SCO vs IBM?)03:10
lkclHugh helped introduce us to the right people, and then, unfortunately, he got a job offer he couldn't refuse, with Amazon :)03:11
lkclhonestly, after making the decision, i was initially "oh my god, what the hell have we done, this is a deeply complex ISA"03:12
lkclbut after almost EIGHTEEN MONTHS of working with it, i now understand that it was, technically, the right decision, and that post on ycombinator explains it best (technically)03:13
lkclbut back to the "supportive vs deeply unethical" part03:13
lkclthe OpenPOWER Foundation have been absolutely amazing, and are (at an inexorably slow and careful, thorough, and excruciatingly methodical pace) actually listening and working on getting things RIGHT... as you would expect from IBM03:15
lkclfor example03:15
lkclthey have added an "External RFC" process to the ISA03:15
lkclwe do not have to join the OpenPOWER Foundation, do not have to sign any escrecy / Commercial Confidentiality Clauses in order to submit SVP64 to the Power ISA!03:15
lkcland when we have pointed out some of the things that would be a show-stopper in the procedures that they are writing, they actually LISTEN03:16
lkclcompare that to the absolutely shocking stone cold silence of the RISC-V Foundation, who are *legally* required to respond under Trademark Law and yet *still failed to do so*!03:18
lkclthen there is the software eco-system as well, which i left out at the start03:20
lkclthe Power ISA is around 25 years old, and has a massive software base.03:20
lkclnow, it's true that IBM has unfortunately gone through some idiotic "what the hell is that department's bottom line doing at zero, let's save some money by cutting that entire R&D Software Team" unbelievably stupid decisions03:21
lkcl(this is about 10-15 years ago)03:22
lkclwhere they basically shot themselves in the foot by firing pretty much the ENTIRE internal Open Source Software R&D team on which their IBM POWER8/POWER9 hardware business depended03:23
lkcland the consequences of that decision - a *decade* ago - are finally beginning to sink in03:23
lkclbut03:23
lkclthey actually realised their mistake, and with the usual "800 lb gorilla" thinking...03:24
lkcl...03:24
lkclwent out and bought Redhat03:24
lkcl(!!!)03:24
lkclwhich i find very funny.03:24
lkcl"hey we screwed up by firing our internal R&D team which only cost us a few million a year to keep on the books: how can we fix that, oh i know, let's spend a billion dollars on buying a little software company called Redhat"03:26
lkclthen also03:26
lkcl(as if the above wasn't enough.... :)03:27
lkclthe Power ISA is covered by IBM's *ENORMOUS* patent portfolio.03:27
lkclif you manufacture an ASIC that is Compliant with the Power ISA, you automatically receive a Royalty-Free Patent Grant from IBM for the patents covering the Power ISA.03:28
lkclso we get patent umbrella protection, just like the Open Innovation Network patent pool, from a company that ACTUALLY knows what it is doing when it comes to patents03:29
lkclwhereas, rather embarrassingly, as it turns out, i can't tell you where i got this from: the RISC-V Foundation's patent "protection" is completely inadequate03:30
lkclthe RISC'V Foundation's Members and the RISC-V ISA infringe *MULTIPLE* IBM patents03:30
lkclwhoops03:31
lkclbottom line is: it's a complex multi-faceted situation, involving and requiring technical expertise and knowledge as well as strategic forward-analysis, and also there are legal protections involved in being in the shadow of an extremely large and successful company, IBM.03:32
lkclhence the length of this answer to what seems like such a simple question, i couldn't accurately summarise the complexities involved, without leaving out something that's crucial03:33
alMalsamolkcl: oh wow thanks for the reply haha04:32
alMalsamoYou said you have to make draconian decisions wrt open source community, what are these?  Does that mean any part of the SoC will be nonlibre?04:33
alMalsamoAlso I don't understand how it would be a conflict of interest to join RISC-V Foundation whilst receiving a grant from NLnet04:33
alMalsamoHmm I am very surprised IBM would grant royalty-free access to Power ISA I don't see what they would have to gain from this...04:35
alMalsamoBut SUN GPLed two of their SPARC CPUs in 2006/200704:36
alMalsamoAlso I wanted to know what license Libre-SOC uses so I checked the git repo page and there are a SHITLOAD of repos there so it is confusing... there are even some riscv repos what's up with that?04:36
alMalsamoAnyway I checked the repo soc.git which maybe is right?  dunno... it shows license as GNU LGPLv3 is this correct?04:37
alMalsamoIf so why not GNU GPLv3+?04:37
alMalsamoWhat is it with weak copyleft for HDL cores?04:37
alMalsamoAlso I am reading about Microwatt core, what is the reason to not use this core which is the same ISA instead of coding a new one from scratch?04:38
alMalsamoMicrowatt is apparently CC-BY 4.0 which is pretty fucking weird for a libre soft core, too bad not copyleft04:39
alMalsamoI'm surprised IBM doesn't push POWER9 CPUs as vehicles to lock people into AIX04:41
alMalsamoBut I guess GNU+Linux works on Power ISA 3.x?04:43
alMalsamoAlso Wikipedia says Libre-Soc would be taped out at 180 nm... I am surprised TSMC even SUPPORTS such an old node, why so outdated here?04:44
alMalsamoAlso does Libre-Soc plan on having EVERYTHING libre licensed?  I am particularly worries about traditionally proprietary components like DRAM controller and GPU04:49
klysalmalsamo, the gpu instructions will be integrated into the cpu instruction set, so no need for opengl05:08
alMalsamoklys: Huh?  You mean Power ISA 3.0 spec includes GPU functions?05:23
alMalsamoAnd how would that mean no OpenGL support?  What about all the 3D software that supports OpenGL?05:23
klysalmalsamo, the instruction set contains extensions that yes, are gpu functions.  I imagine there will be some kind of mesa shim for programs that need opengl, except those inistructions will not go to a gpu.05:25
alMalsamoHmm that's kind of weird I never heard of something like this, I only used systems with indpendent GPU... I would HOPE that there would be a mesa shim but I wonder how good performing would be.  For example I'd like tohave desktop compositing and maybe support games like 0 A.D. or Playstation emulators05:39
klysright now there's a bug in misaligned memory access, probably multiple cache-related bugs.  linux doesn't boot from verilator.  lkcl is working on that, and has broke some ground.05:43
alMalsamoklys: Umm what?  was this in any way related to what we were talking about?05:54
klysjust, we can't expect great things so early on05:55
yambo_If the information covered in this OpenPower Summit video is still correct, it seems to cover many potential questions. https://yewtu.be/watch?v=RjA_WdeuMJw09:51
yambo_I can see many of the ones above are addressed in it.09:52
lkclalMalsamo, every single part of the SoC as release by Libre-SOC will be Libre-Licensed.  we're required to do so, because it is part of the conditions of the funding from NLnet and NGI POINTER10:24
lkclhttps://openpowerfoundation.org/final-draft-of-the-power-isa-eula-released/10:24
lkcl"anyone is now free to build their own POWER ISA compliant chips, ASICs, FPGAs etc. without paying a royalty and with a “pass through” patent license from IBM for anything that pertains to the ISA itself.  On top of this of course an ability to contribute to the ISA as well through a Workgroup we’re standing up within the OpenPOWER Foundation."10:26
lkclthe conflict of interest comes with fulfilling the business objectives of engaging in "Full transparency" and of the NLnet Grant's "Privacy and Enhanced Trust" with the requirements of the RISC-V Foundation to engage in "commercial secrecy"10:27
alMalsamolkcl: okay cool, so will the license for the entire thing be GNU LGPLv3?10:28
alMalsamoAnd why not GNU GPLv3?10:28
lkclit is already LGPLv3+.10:28
lkcl(actually some parts are LGPLv2+)10:28
lkclbecause it turns out that the GPLv3 would cause some issues when it comes to ASICs10:28
lkclso anyone wishing to use our components - funded by NLnet - in 3rd party ASIC products, the GPLv3 would prevent them from doing so10:29
lkclwhereas the LGPLv3+ would not10:29
lkclfor example, i know of a company that actually used the SPARC GPL'd code and put it into a commercial ASIC10:31
lkclthey - get this - failed *knowingly* to comply with its terms.  they not only made modifications to the SPARC core and failed to make those publicly available, but they also failed to release the source code of the PHYs and the rest of the design that went into the ASIC10:32
lkclwhy?10:32
lkclbecause some of those PHYs were under NDA.10:32
lkclthey placed themselves in an impossible legal situation there10:32
lkclthere are a large number of repositories because this is an extremely large project that needs to be properly managed as such.10:33
lkclfor example: the popular Minerva core is 4,000 lines of HDL10:33
lkclwe are at i think 100,000 and increasing10:33
lkcla massive proportion of that is unit tests.10:34
lkclhowever there is a Power ISA Simulator, Formal Correctness Proofs, a corresponding library equivalent to chisel.io, another library for IEEE754 pipelines and other arithmetic functions10:34
lkclthere are *twelve* separate pipelines in the design because we are working towards an Out-of-Order Multi-Issue Superscalar design10:35
lkclweak copyleft is used because of the insane 5-level NDAs throughout the entire ASIC industry10:36
alMalsamoHmm I don't understand why GPLv3 would prevent using Libre-Soc in ASICs... they would just have to GPLv3 other components in the machine which would be net positive for libre computing10:36
lkcl"just have to GPLv3 other components"10:37
lkclno chane10:37
lkclce10:37
lkclthe amount of money that those 3rd party suppliers make is monstrous10:37
lkclthey're not going to give that up without a fight10:37
lkclplus, there are actually legitimate reasons why they charge so much money10:37
lkclit's common to run SPICE Simulations for 3 months straight10:38
alMalsamoHmm what 3rd party suppliers are we talking about?  I mean what components in the final machine do you think would be nonlibre?10:38
lkcland for development times of PHYs to be 18 months10:38
lkclok, so there are two "paths" there.10:38
lkclwe - LibreSOC - the LibreSOC team - as funded by *NLnet* and NGI POINTER - are *NOT PERMITTED* to create proprietary nonlibre ASICs because that violates our agreements.10:39
lkcli said that already10:39
alMalsamoyes so far so good I like this10:40
lkclbut, of course, we recognise that if we try to force a commercial operation to go the Libre route at this stage (google "Wavious LPDDR4/5" btw)10:40
lkclthat the Libre-SOC core will never get into any commercial silicon that it is designed to be in (2-3 ghz processors equivalent to Intel i7 and Intel i9 for example)10:41
alMalsamoHmm okay I found https://github.com/waviousllc/wav-lpddr-hw apparently Apache 2.0 licensed which is compatable with GNU GPLv310:42
lkclso we *want* it to be picked up by a commercial company, and for them to comply with the LGPLv3+ License, which requires them to release any modifications *of the core* they make to that commercial ASIC10:42
lkclyes!10:42
lkclso there is progress on the PHYs.10:42
lkclbehind the scenes i have heard that there are people correspondingly working on PCIe, and we can reasonably assume that they are also pushing and hunting for partners to release USB3 PHYs, etc. etc. etc.10:43
alMalsamoHmm but I still don't understand why strong copyleft would not get into commercial silicon (and what does the license have to do with clock speed?)10:43
lkclok, that takes some explaining10:44
lkclwe - Libre-SOC - right now - can use opencores SDRAM controller (SDR1).10:44
alMalsamoI think it would be a stronger stand for libre computing if strong copyleft were chosen and if this prevents Libre-Soc from being packaged with proprietary components then this is a positive thing IMO10:44
lkclhttps://opencores.org/projects/sdr_ctrl10:45
lkclthis is limited to 166 mhz simply because SDRAM (DDR1) is limited to 166 mhz.10:45
alMalsamoOKay yeah there's alot of different components at play here I have decent understanding of hardware components but I have read ZERO HDL code in my life so I don't know how they all tie together sorry for my ignorance10:45
lkclthere simply do not exist anywhere in the world any SDRAM (DDR1) commercial off-the-shelf chips that go above that speed10:46
lkclthe *only reason* why, commercially, there still exists any SDRAM (DDR1) chips *at all* (from companies like Winbond) is because of low-cost Router products from e.g. TP-Link10:46
lkcland some IoT embedded processors.10:47
lkclall of these max out at maybe... 300 mhz10:47
lkclthey usually run OpenWRT10:47
alMalsamoBut isn't DDR also SDRAM?  Even newer standards like DDR5 is a type of SDRAM which is 2400-3600 MHz?10:47
lkcldo you know how long it takes to develop a DDR3/4/5 PHY, or how much it costs to license one?10:48
lkclit's 2 MMMILLLIOON USD10:48
lkcl2 MILLION10:48
alMalsamoHaha no I have no clue I am very ignorant about this10:48
lkcland takes around 18 months10:48
lkclif you started from scratch10:48
alMalsamoOkay what about Wavious then?  That supports both LPDDR4 and LPDDR5....?10:49
lkclplus, you would need, if you wanted it to be a commercial success, to run SPICE Model Simulations in the target geometries and target Foundry10:49
alMalsamoI have never heard of SPICE before... sorry again for ignorance10:49
lkcland the cost of the proprietary tools, to buy, are USD 100,000 for an individual contractor10:49
lkclUSD 250,000 *PER WEEK* to "rent" by a company10:49
lkcland if you buy all of their tools it is USD 95 MMMILLLIION US dollars10:50
alMalsamoHmm why 100.000 USD to BUY but 250.000 USD to RENT?  shouldn't renting be cheaper?10:50
alMalsamoAlso how do you rent software lol once you have a copy you are good to go10:50
lkclread it again, you missed out some important context10:50
alMalsamoand why not just torrent this shit >_<10:50
lkclbecause that would be illegal, and if discovered, the products created could be impounded and destroyed10:51
lkcland the owners of that proprietary software could, on further investigation, decide to come after us.  they'd lose the case but the damage would be done10:52
alMalsamoOkay what are these proprietary tools that cost 100.000 USD is this SPICE you are talking about or some other software?  And is this just for RAM PHY?10:52
lkclso i fervently hope like hell nobody ever tries that10:52
alMalsamoAnd again what about Wavious?10:52
lkclhang on hang on, too many questions at once.  i can't cope (and i have R.S.I. so i have to stop soon)10:53
lkclUSD 100,000 --->for an individual contractor<----10:53
lkclUSD 250,000 *PER WEEK* to "rent" ---->by a company<-----10:53
alMalsamoRepetitive strain injury, a disorder affecting muscles, tendons and nerves from repetitive movements, forceful exertions, vibrations, mechanical compression, or sustained/awkward positions10:53
alMalsamoThat?10:53
lkclyes.10:53
lkclthank you for not making me type that out :)10:54
alMalsamoOh shit sorry to hear that, my mom has carpel tunnel from computer use but I never had any health issues even tho I abuse my computer for many years10:54
lkclit's a long-standing condition, started in 1996.10:54
lkclklys, we're creating GPU instructions, yes, however these are "low-level primitives" akin to those that go into the AMDGPU ISA (for example)10:55
lkclor the MALI Midgard ISA10:56
lkclwe still need to actually do the ports of the 3D Drivers, and we chose Vulkan because it's the best of those, plus it has various "shims"10:56
lkclalMalsamo, give me a second to go back over the discussion10:57
lkcland, later, when this becomes more popular, we can come back and do dedicated opengl drivers rather than going "Hardware-to-Vulkan" then "Vulkan-to-OpenGL"10:58
lkclforget the name of the shim that does Vulkan to OpenGL.10:58
lkclyambo_, thx for that10:59
lkclpainful. definitely need a break, sorry.  back later10:59
alMalsamolkcl: Okay thanks for your effort anyway sorry it hurts maybe take some ketamine or cannabis lol11:02
lkcl:)11:16
lkclalMalsamo, https://www.youtube.com/watch?v=yaZ60h_ZmiE11:19
lkclsend to your mum11:19
Chips4Makers[m]alMalsamo: Foundries often provide free (NDA'ed) blocks like IO cells, SRAM blocks etc. especially the IO cells you need to make a test chip. Making your design strong copyleft means also that you always need to first develop a strong copyleft version of these blocks before you can do a first test tape-out of your strong copyleft core.14:27
Chips4Makers[m]Ideally one should be able to do that but not doing it ATM is much more pragmatic.14:27
Chips4Makers[m]E.g. strong copyleft would make LibreSOC incompatible with the free Google sponsored Sky130 MPW runs for example.14:27
programmerjakevulkan 1.3 released today! https://www.phoronix.com/scan.php?page=article&item=vulkan-13-2022&num=115:08
programmerjakea few bits of Kazan (vulkan driver for libre-soc) are apache2/mit licensed, because they are intended to be also used by Rust's standard library, everything else is lgpl2.1+15:11
lkclChips4Makers[m], programmerjake thx for the informative replies, really appreciated15:19
programmerjakehttps://www.khronos.org/blog/vulkan-1.3-and-roadmap-202215:20
programmerjakefor kazan, i picked lgpl2.1+ rather than lgpl3+ because i wanted it to be easy to move code to the linux kernel if needed15:24
tplatenI the past I once built the kernel using this tutorial https://shenki.github.io/boot-linux-on-microwatt/18:48
lkclyes that's the one i used18:48
lkcland used this18:49
lkclurl = https://git.kernel.org/pub/scm/linux/kernel/git/joel/microwatt.git18:49
lkclwith commit abe0e1dab18:49
tplatenI also found this one https://www.phoronix.com/scan.php?page=news_item&px=OpenPOWER-Microwatt-5.1418:50
octavius"Please join us on the Vulkan Discord, where we’re inviting discussion." ewwww XD18:55
octaviusTrying to get out of my connections on that platform18:56
tplatenYes, I strongly prefer Matrix over Discord18:56
octaviusThe client also seems to be more bloated for me, crashes fairly often18:57
octaviuson linux that is18:57
octaviusSlowly migrating my friends over to matrix, one friend at a time :D18:59
tplatenAt FOSDEM after Using LibreSilicon I will watch things like Native Group VoIP and Metaverse on Matrix19:00
octaviusCool, didn't know they could do livestreams:19:05
octaviushttps://matrix.org/blog/2021/01/04/taking-fosdem-online-via-matrix19:05
octaviusalthough arbitrary webapps added to chats/channel seems a little scary19:05
tplatenI cloned the repo, I get error: pathspec 'abe0e1dab' did not match any file(s) known to git19:07
tplatenThen I just download the rootfs and use the microwatt_defconfig19:09
lkcltplaten, https://git.kernel.org/pub/scm/linux/kernel/git/joel/microwatt.git/log/?h=microwatt-5.719:10
lkclhttps://stackoverflow.com/questions/9537392/git-fetch-remote-branch19:10
tplatenThe link to the rootfs is dead: https://ozlabs.org/~paulus/rootfs.cpio.xz19:24
tplatenDoes anyone have a backup copy of that file19:32
octaviusTried searching weyback machine, no luck :(19:51
tplatenI think I will have to build the rootfs by hand, if I do that I'll also document that step. But first I wait for a reply from Luke, I have already posted to the mailing list.19:57
lkclreplied, uploaded22:01
lkclmeeting? toshywoshy programmerjake octavius mikolajw lxo markos cesar sadoon_albader[m if you're not on mad-timezone? :)22:02
sadoon_albader[mOh boy22:03
sadoon_albader[mYou're gonna enjoy my story22:03
sadoon_albader[mNow or in an hour?22:04
lkclnow22:06

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!