Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
Shame Boy
Mar 2, 2010


ahhh good ol' diminishing_expectations.png

Adbot
ADBOT LOVES YOU

Shame Boy
Mar 2, 2010

The Management posted:

itanium has been dead for years. its VLIW instruction set was garbage and it tried to pawn off a whole bunch of difficult problems on the compiler. well, a compiler that solves those problems well never appeared because it's much harder to solve the problems at compile time than at run time. so while theoretically it was faster in practice it was terrible running real code. it was routinely spanked by x86 processors while using more power. basically it was a total disaster.

i seem to remember someone in one of the threads that talked about itanium having actually worked on it and said that they actually did solve the compiler issues but the whole thing was laughably mismanaged on every level so it never had a chance anyway

Shame Boy
Mar 2, 2010

echinopsis posted:

can someone give me an explain like i'm 5

like uranium was a whole new instruction set not backwards compatible with x86 but amd just added into x86 to make x64?

itanium had this great idea that like, man, what if the processor could do 6 instructions at once mannn

turns out that's actually a bad idea because figuring out at any given point in a program you *can* do instructions simultaneously is real hard unless you specifically code poo poo with this special snowflake platform in mind which nobody's gonna do

Shame Boy
Mar 2, 2010

i would really like to see a new big deal processor architecture that's not ARM or x86 some time just because i think it would be real interesting and the way computers do things has changed a bunch since the loving 1980's but that's never gonna happen lol

or at least in the future when there's quantum neural cyberbrains or w/e they'll still have an x86 compatibility mode for running your company's lovely Java 5 accounting software

Shame Boy
Mar 2, 2010


eh i guess, i was hoping for something more x86-y with a million loving instructions and extensions and stuff

Shame Boy
Mar 2, 2010

tty0 posted:

ah yes, you were hoping for something more like x86, but that isn't at all like x86.

yes exactly

Shame Boy
Mar 2, 2010

The Management posted:

most modern processors have 128-bit or larger vector registers that can do this, including x86_64

yeah but the bus can't do it can it? you can just load a bunch of stuff into the registers normally and do an operation on all of them at once

Shame Boy
Mar 2, 2010

rjmccall posted:

the core isa is super-riscy in that "yay we can run a lot of instructions now which is important because it'll take us twice as many instructions to do anything" sort of way. they made sure they covered all the basic c operations but anything even closely related like add-and-test-overflow or add-witih-carry is impossible to do efficiently with the base instructions. but mostly it's like, just read the instruction specifications and you'll see all sorts of bizarre and wasteful crap

like the branch-immediate instruction (jal) has a 20-bit immediate operand, but it's stored in a crazy order where 0bTSRQPONMLKJIHGFEDCBA is actually reordered as 0bTJIHGFEDCBAKSRQPONML for as far as i can tell no reason at all. instructions are 32-bit so the pc is generally required to be 4-byte-aligned but the immediate offset is only implicitly multiplied by 2 so the instruction only has ±1MB range instead of ±2MB. instead of burning 1 bit on branch vs. branch-and-link it burns 5 bits so that you can use an arbitrary gpr as the link register (but you won't get return-address prediction unless you use x1), which i can kindof imagine ways to use but not for anything important enough to justify dropping 4 bits from the range of this instruction. and really it should be 5 because both of these are super-common instructions and it's worth burning a second opcode on them

ok, next. the branch-register instruction (jalr) takes a 12-bit immediate offset. that offset is not scaled at all. the lowest bit of the target address is defined to be ignored, but not the lowest two bits so this can still fail dynamically from mis-alignment. as far as i can tell this immediate exists solely because they wanted to use a two-operand instruction format; i am really blanking on what it would be used for. the spec suggests it could be used to implement fast library calls by doing absolute branches to ±2KB, which is like, yes please let me just give memcpy a small integer absolute address, i am doing research into how easy i can make it to write security exploits

sounds like it was written by a bunch of academics with weird little bullshit pet reasons for all the quirks

oh wait it was wasn't it

Shame Boy
Mar 2, 2010

echinopsis posted:

wtf is a smoothebain?

"oh my my brain is deficient in surface area"

the wrinkles in your brain are where you keep your thoughts so if you have a lot of them you're real smart just like how laugh lines show how much laughter you've had in your life

Shame Boy
Mar 2, 2010

RISCy Business posted:

sun servers used to have actual physical keys that you needed to boot the server (i think)

what a weird era

my dad had a computer case with a lock like that, where you turned a key to connect the power button circuit. i guess that's kinda useful in that you could also prevent someone from accidentally turning the thing off back when hitting the power button meant "WHELP LET'S FREAK OUT AND TURN OFF" to most OS'es

Adbot
ADBOT LOVES YOU

Shame Boy
Mar 2, 2010

i just remembered that case also had a turbo button AND the little two-digit LED screen that showed the tens of megahertz your bitchin' hot rod of a 386 was running at :allears:

my dad used that case long after that stopped being relevant but he hardwired it somehow so that it just stuck at 99 because he likes having a bunch of annoying meaningless LED's on everything

  • Locked thread