Slashdot Mirror


Eben Upton Explains Why Raspberry Pi Isn't Vulnerable To Spectre Or Meltdown (raspberrypi.org)

Raspberry Pi founder and CEO Eben Upton says the Raspberry Pi isn't susceptible to the "Spectre" or "Meltdown" vulnerabilities because of the particular ARM cores they use. "Spectre allows an attacker to bypass software checks to read data from arbitrary locations in the current address space; Meltdown allows an attacker to read data from arbitrary locations in the operating system kernel's address space (which should normally be inaccessible to user programs)," Upton writes. He goes on to provide a "primer on some concepts in modern processor design" and "illustrate these concepts using simple programs in Python syntax..."

In conclusion: "Modern processors go to great lengths to preserve the abstraction that they are in-order scalar machines that access memory directly, while in fact using a host of techniques including caching, instruction reordering, and speculation to deliver much higher performance than a simple processor could hope to achieve," writes Upton. "Meltdown and Spectre are examples of what happens when we reason about security in the context of that abstraction, and then encounter minor discrepancies between the abstraction and reality. The lack of speculation in the ARM1176, Cortex-A7, and Cortex-A53 cores used in Raspberry Pi render us immune to attacks of the sort."

116 comments

  1. tl;dr by Anonymous Coward · · Score: 0

    It doesn't use an Intel cpu

    1. Re:tl;dr by Ungrounded+Lightning · · Score: 4, Informative

      It doesn't use an Intel cpu

      True for "Meltdown", which only breaks Intel CPUs. But "Spectre" also breaks some AMD and ARM processors.

      Fortunately, the particular ARM cores in the Raspbery Pi are also NOT doing the thing that lets Spectre break them.

      --
      Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
    2. Re:tl;dr by rahvin112 · · Score: 1

      Spectre breaks anything that does out of order processing, and it's the first shoe to fall. The techniques discovered in Spectre are just the beginning of a whole new wave of attacks based on the timing attacks Spectre use.

    3. Re:tl;dr by Ramze · · Score: 1

      False. Out of order execution alone isn't enough. Spectre was NAMED after "speculation" -- branch prediction. The ARM core in the Raspberry Pi DOES NOT USE THIS.

      Read the section for Spectre here:
      http://www.pcgamer.com/what-yo...

      Meltdown affects ONLY Intel because they allowed a special type of branch prediction for illegal operations, Spectre affects many CPUs that use branch prediction, but is much more difficult to exploit as each exploit would have to target a specific cpu or cpu family -- not a generic exploit that would work on nearly every Intel CPU since the mid 90s.

      Many CPUs use branch prediction in order to gain some performance when they guess correctly, but that's at the cost of using more power and the risk of wasting that power on bad guesses -- which is why some ARM chips (like the one Pi uses) avoid it completely.

    4. Re:tl;dr by arglebargle_xiv · · Score: 1, Flamebait

      It's more like "the Pi uses such a gutless CPU that there's no chance it'll be vulnerable to anything affecting high-performance CPUs".

      Next up: Woz issues a press release explaining why the Apple II isn't vulnerable.

    5. Re:tl;dr by gnasher719 · · Score: 1

      Next up: Woz issues a press release explaining why the Apple II isn't vulnerable.

      The first few generations of Macs were not vulnerable. No malware could access data from other processes or users, because there were no other processes or users. Probably the same with early Windows versions.

    6. Re:tl;dr by Anonymous Coward · · Score: 0

      It's more like "the Pi uses such a gutless CPU that there's no chance it'll be vulnerable to anything affecting high-performance CPUs".

      This is the argument for KISS. Is the complexity of today's hardware/software worth the marginal benefits? Yeah, if you are into serious gaming or ..., sure. But my needs only rarely require HPC despite my rather technical applications (Mathematica, MATLAB, ...) The automagical crap on Win 10 that works hard to hide the loading and execution of programs that make/manipulate data files, complicates hell out of things for my simple mind. (Yeah, I know there is a market for the "Oh look! here is a button with a smiley face that magically connects me to Facebook..." interface, as there is a population they buys religion from scifi writers who write "the way to get rich is to start a religion" and votes for politicians who write "the art of the deal is to tell people what they want to hear.")

    7. Re:tl;dr by iive · · Score: 1

      Not exactly.

      Meltdown affect only Intel, because only Intel CPU allow userland process to successfully load a register with supervisor (kernel) data, when the page flags indicate that data should not be readable by userland.

      There is absolutely no reason to allow the read to complete. Checking the permission flags is just a couple logical operators and should be done at the same time as TLB lookup. TLB is special kind of cache that hold essential data from the Page Table.
      TLB contains the access flags, cache type, and the physical memory address. You need that info first, before you can check the caches and do the actual read.

      This is why AMD processors are not affected by Meltdown.

    8. Re:tl;dr by TheRaven64 · · Score: 2

      All out-of-order processors perform speculation. You can't fill an out-of-order pipeline usefully without it and the power, area, and complexity overheads of out-of-order designs are huge so no one is crazy enough to build an out-of-order design that throws away most of the benefit by not doing any speculation. A number of in-order processors do as well, because any pipelined processor that doesn't do some speculative execution is going to have pipeline bubbles and lose a good 20% of its maximum throughput.

      The Raspberry Pi uses in-order cores. I don't remember much about the ancient ARM11 on the original, but the newer ones use A7 and A53 cores, which both have very similar pipeline designs. They do perform speculative execution (and they definitely do perform branch prediction - the only pipelined processors that don't are specialised things like DSPs and GPUs), but it appears that the in-flight instruction are cancelled sufficiently early that you never see different execution times depending on which speculative path way taken (only differences between wether speculative execution was correct not).

      The core of the Spectre attacks is that you can have speculative execution that has data-dependent timings and then use the timing to tell which of the paths was executed and therefore what the data was. This is generally harder to exploit on in-order processors, because instructions are still executing in the correct order and you typically only have 7-8 cycles between starting to speculate and the instructions being cancelled. That's generally not long enough to satisfy an L1 miss, so it's fairly common to wait before doing an L2 fetch until you know that the instructions won't be cancelled.

      --
      I am TheRaven on Soylent News
    9. Re:tl;dr by TheRaven64 · · Score: 1

      I wouldn't be surprised if we start to see more of a demand for massively multicore in-order processors. If Cavium has any sense, they'll be marketing the hell out of ThunderX to cloud providers this month. The ThunderX has a lot of very simple in-order cores that are unlikely to be vulnerable to this kind of attack, because they don't do much speculative execution. The same is true of the UltraSPARC Tx series: the earlier ones did no speculation, they simply ran another thread when the current one had nothing non-speculative to keep the pipelines fed (I think the later ones did some speculative execution). This kind of design is a lot more efficient in terms of computation per transistor or Watt, but only if your software has enough threads to keep the execution units full.

      --
      I am TheRaven on Soylent News
  2. List of CPUs by Anonymous Coward · · Score: 0

    I wonder if there will be a more concise list of all the CPU and part numbers that are susceptible to Spectre and Meltdown.

    There are so many ARM based CPUs out there that it would be good to know if my IOT device is a concern.... Or tablet... Or phone.... I guess now more than ever it will be good for google play to verify all the updates that go into the play store...

    I also wonder if there will be possible future weird attach vectors for Amazon Echo (Texas Instruments DM3725 on older models), NEST (Sitara ARM), etc...

    1. Re:List of CPUs by DontBeAMoran · · Score: 1

      I'm going to make a fortune and release Z80-based IoT devices!

      --
      #DeleteFacebook
    2. Re:List of CPUs by Guspaz · · Score: 1

      There are already Z80 chips in IoT devices. At this point, they're used as microcontrollers, and Zilog threw hardware TCP/IP stacks on them with internet-connected devices in mind.

    3. Re:List of CPUs by networkBoy · · Score: 1

      My fridge runs CP/M Wooooo!

      Actually that would be kinda neat...
      Brb.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    4. Re:List of CPUs by cdu13a · · Score: 2

      Don't really know if a list is practical. As you Say there are a lot of ARM based CPUs.

      However most CPUs if you google the model number you can find a product page that will tell you which cores are in it. Compare the cores to ARMs list here https://developer.arm.com/support/security-update

      So your example of the Texas Instruments DM3725 http://www.ti.com/product/DM3725 contains an Arm A-8 core which is affected by variant 1 and 2 of spectre.

    5. Re:List of CPUs by Z00L00K · · Score: 1

      Even nicer if it was MP/M. Or OS8MT.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  3. Re:Oh really? The Cortex-A7 and Cortex-A53.... by DontBeAMoran · · Score: 0

    Then clearly we can conclude that ARM Holdings know very little about their own cores, as opposed to Raspberry Pi founder and CEO Eben Upton. /sarcasm

    --
    #DeleteFacebook
  4. Re:Irrelevant by DontBeAMoran · · Score: 4, Insightful

    What you qualify as "toys" are more powerful than the computers we used when I was in college in the mid-1990's.

    --
    #DeleteFacebook
  5. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Would this flaw affect my arduino web server?

  6. Re:Oh really? The Cortex-A7 and Cortex-A53.... by cdu13a · · Score: 3, Informative

    Care to point out where in Arms white paper it mentions the a7 or a53 cores being affected by Spectre?

    https://developer.arm.com/support/security-update

  7. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Lunix+Nutcase · · Score: 4, Informative

    Except that ARM doesn’t list the A7 or A53 as vulnerable.

    https://developer.arm.com/supp...

    So Eben knows just as much as ARM does.

  8. Low performance by Anonymous Coward · · Score: 0

    is a feature.

  9. Re:Irrelevant by Anonymous Coward · · Score: 0

    And are still less powerful than your wristwatch today. What's your point?

  10. Re:Irrelevant by Anonymous Coward · · Score: 0

    A year ago, I replaced my home server (was Intel CPU), which runs photo, streaming, web services. with an RPI3. It is sufficient.

    It's replacement will likely be another Arm64 which hopefully has more memory and USB3.
    It would be very unlikely that I would go back to a power hungry Intel chip.

  11. Re:Irrelevant by Lunix+Nutcase · · Score: 1

    Last time I checked we don’t live in the 90s anymore and those computers look like mere toys compared to the CPUs of today. Laughably so when even a dinky Intel m3 is many times faster.

  12. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Krishnoid · · Score: 0

    Clicked on the wrong moderation, so posting to undo.

  13. In other words by Anonymous Coward · · Score: 5, Informative

    You wanted a cheap computer, so we picked a cheap CPU that doesn't do fancy-schmancy stuff like trying to guess what you will do next.

    In other news, my abacus never has a battery fire.

    1. Re:In other words by Anonymous Coward · · Score: 0

      In other news, my abacus never has a battery fire.

      If I could draw I would draw you a picture of Superman calculating so quickly with an abacus that it catches fire from friction.

  14. Re:Irrelevant by cfalcon · · Score: 4, Funny

    I don't know the exact number, of course, but I know that a raspberry pi is at MINIMUM a thousand times more powerful than computers that took us to the moon. So like, what fucking ever.

  15. Not a "toy" by davidwr · · Score: 1

    It's a bona fide low-power computer that is suited for some computing tasks but is not a replacement for a laptop or desktop PC.

    There is a difference.

    Comparing a PC to a Pi is like comparing a professional-grade bicycle with a $50 kid's bike. Both get the job done and both are built to last for years, but one has a lot more features than the other.

    It is NOT comparing a professional-grade bicycle with a toy bicycle that Ken and Barbie dolls can ride around on.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
    1. Re:Not a "toy" by Anonymous Coward · · Score: 0

      This. The same guys bagging on the Pi would probably love to have a NeXT Cube or Sun pizza box machine.

  16. Re:Poop in my mouth by Anonymous Coward · · Score: 0

    are u german?

  17. THE REAL REASON IS by Anonymous Coward · · Score: 0

    ...because nobody in their right mind does online banking on a RasPi.
    Those SD cards will go corrupt if you just look at them!

  18. Re:Poop in my mouth by Anonymous Coward · · Score: 0

    So you'll leave my goat alone for a bit?

  19. Stupid by Anonymous Coward · · Score: 0

    Anyone that panics about an issue that requires LOCAL CODE to run needs to check their six.
    Seriously, turn off remote Admin, your Guest account and watch your shares.
    When a SnapDragon Flaw comes up, then you can panic...

    1. Re:Stupid by cdu13a · · Score: 2

      And uninstall your web browser, Since almost every web page contains javascript that gets downloaded and run as "local code". Spectre can work via javascript.

      SnapDragon CPUs are affected by spectre as well. Quallcomm just recently verified this.

    2. Re:Stupid by mapkinase · · Score: 1

      >Since almost every web page contains javascript that gets downloaded and run as "local code".

      No Script

      --
      I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
  20. Re:Irrelevant by Lunix+Nutcase · · Score: 1

    I can walk 100 times faster than a snail. Doesn’t make me an olympic athelete.

  21. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    We can also clearly conclude that DontBeAMoran not only can't spell, he can't read either. He should pay more attention to what his username is telling him.

  22. Re:Irrelevant by romanval · · Score: 1

    It depends what you use it for. An RP is a great for learning and for dedicated devices..... but we know it's far from being a modern desktop replacement. My "seat of my pants" feeling is that an RP3 is about as fast as a high end Pentium 3 (Circa 2000).

    There are a *lot* of dedicated use devices that need much less power then a full fledged PC. The great thing is that PC technology doesn't stand still, and that a RP20 (or whatever the equivalent of an RP3 is in 15 years) will probably be as fast as today's PC.

  23. to bad they dump all IO on the usb bus by Joe_Dragon · · Score: 1

    to bad they dump all IO on the usb 2.0 bus so no gig-e hell not even full 100M much less with any disk io at the same time.

    1. Re:to bad they dump all IO on the usb bus by Anonymous Coward · · Score: 0

      Yes, it is too bad. And this is one of the top two reasons that I replaced my old Raspberry Pi 2 with an Odroid C2 instead of a Raspberry Pi 3. The other reason being that I've had too many issues with SD cards and wanted to get away from using them for operating systems.

    2. Re:to bad they dump all IO on the usb bus by drinkypoo · · Score: 1

      If you need GigE you get a Pogoplug. They ruined the software so that you have to solder to the motherboard to get a serial port and root the thing, so they are now cheap AF. SATA which supports port multipliers, USB3, USB2, and a SDHC slot, for around ten bucks. And yes, GigE. runs Debian. Makes a great little fileserver. The TDP is under 10W...

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  24. Re:Irrelevant by Anonymous Coward · · Score: 0

    And my workstation is more than 300,000 times faster. Cool story, bro.

  25. Doubly irrelevant by hey! · · Score: 4, Informative

    Raspberry PIs and equivalents are toys.

    Raspberry PI isn't a CPU. It is a single-board-computer designed for computer-science education and for rapid prototyping of embedded systems. The CPU in question is the Cortex A53 processor, which according to the manufacturer's datasheet is intended as a:

    High efficiency processor for a wide range of applications in mobile, DTV, automotive, networking, storage, aerospace, and more.

    This doesn't sound like a toy. It sounds like it is meant to be simple and efficient to integrate into industrial designs. That probably means that power consumption is a higher priority than squeezing the most performance out of the chip, which in turn means less aggressive use of speculative execution to keep as much of the chip working at any given time as possible.

    So not being as vulnerable to this particular side channel attack isn't the result of the forethought of the Raspberry Pi's designers, or or Broadcom or ARM Holdings. It's the result of the intended applications of the CPU.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    1. Re:Doubly irrelevant by Anonymous Coward · · Score: 0

      Raspberry PI isn't a CPU. It is a single-board-computer...

      Raspberry Pi isn't a CPU. It's a proprietary GPU with an ARM sidecar that somebody figured out how to run Linux on.

    2. Re:Doubly irrelevant by greenwow · · Score: 0

      > aggressive use of speculative execution to keep as much of the chip working at any given time as possible.

      Which is necessary for Windows because it is so slow. Intel has to work hard to keep their CPUs fast enough to run the newest version of Windows.

    3. Re:Doubly irrelevant by Anonymous Coward · · Score: 0

      Wrong again. As the grandparent says, it's a single board computer with a SoC on it.

      (And I'd say that >99% of GPUs are proprietary...)

    4. Re:Doubly irrelevant by Anonymous Coward · · Score: 0

      *Sigh* Nothing to do with Windows being slow, it's more to do with intel trying to make their CPUs run code quicker, regardless of the OS. (Even if the main target is Windows)

  26. Excellent tutorial by mspohr · · Score: 2

    With all the hype and panic about these vulnerabilities, it was refreshing to read Eben's clear, detailed tutorial on processor architecture and how these exploits work (and why the RPi isn't vulnerable).
    Highly recommend reading the article.

    --
    I don't read your sig. Why are you reading mine?
  27. You guys... by GerryGilmore · · Score: 1

    "Oh! Is THIS ARM chip vulnerable? Oh, NNNNNOOOO...." Everyone seems to have lost perspective here. 1) In order for you to be "vulnerable", you must be running some kind of malware. If you're running malware, you are already fucked with a sand-paper dildo. 2) Given #1, coupled with the astounding number/variety of destructive forms of malware extant, it is ludicrous to give more than a nano-second's consideration (as a basic user or admin) to this. 3) Does anyone have any idea of how difficult it is to leverage this particular vulnerability to do something useful? Especially given #2 above. Crikey - the Panic Parade(TM) must go on, I guess.

    1. Re:You guys... by farble1670 · · Score: 1

      3) Does anyone have any idea of how difficult it is to leverage this particular vulnerability to do something useful?

      NVD doesn't, yet. They have a big banner that says "undergoing analysis".

      https://nvd.nist.gov/vuln/deta...

    2. Re:You guys... by Anonymous Coward · · Score: 0

      The problem I've read has more to do with the cloud computing/VM world. Sure your instance may be malware free, but if another user's instance isnt malware free, or the other instance's user is down right malicious they could potentially access memory of other VMs on the system. When you consider how much cloud computing and VMs have taken off in the industry this is a huge problem.

    3. Re:You guys... by drinkypoo · · Score: 3, Informative

      Everyone seems to have lost perspective here. 1) In order for you to be "vulnerable", you must be running some kind of malware. If you're running malware, you are already fucked with a sand-paper dildo.

      It would be surprising if the average user didn't encounter malicious code, because malicious Javascript is a thing. At least one of these attacks can be made through your browser. How are you enjoying your anal sanding?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    4. Re:You guys... by Anonymous Coward · · Score: 0

      To exploit meltdown you only need to be running on the same CPU. That might be tricky on a desktop or phone (it'd need either malware as you said or a virus). However there's far more potential for damage in the cloud. There you can rent a VM running on the same host that's running VMs belonging to other companies, and use it to read data from the other VM. Getting a VM there is pretty easy, putting your own software on there trivial, and because they're servers the potential for there to be 'interesting' data in the other VM is quite high.

    5. Re:You guys... by gnasher719 · · Score: 2

      1) In order for you to be "vulnerable", you must be running some kind of malware. If you're running malware, you are already fucked with a sand-paper dildo.

      Depends. If I run malware on my Mac and it is 100% limited to the single user that it's running on, then I'm fucked. Because the single user (me) is all I care about. If I run malware on a cloud server that is 100% limited to the single user that it's running on, then _I_ am still fucked, but everyone else on the server is safe. If I ran malware on my iPhone, software isn't supposed to be able to access anything outside that app, so I should be safe even with malware.

      So fixing this is not _that_ important for a single user desktop or laptop, it's _very_ important for phones and tablets that should have protection between apps, and critically important for any servers.

    6. Re:You guys... by squiggleslash · · Score: 2

      For SPECTRE, the nature of the attack means that programs you expect to be sandboxed in VMs, such as Javascript scripts, may be able to read data outside of their sandboxes if the VM does not specifically address it. So if someone's running a web browser on a SPECTRE-vulnerable ARM CPU, then they're vulnerable if they browse the web if the browser hasn't been SPECTRE hardened.

      So saying "You must be running some kind of malware" is misleading. Types of software you run that you would not normally consider a security risk *might* be.

      The other side of this is that both Mozilla and Google have released SPECTRE-hardened web browsers, so there's that.

      --
      You are not alone. This is not normal. None of this is normal.
  28. Re:Irrelevant by Anonymous Coward · · Score: 0

    And? The Apollo computer is an even quianter toy.

  29. Re:Irrelevant by farble1670 · · Score: 0

    I know that a raspberry pi is at MINIMUM a thousand times more powerful than computers that took us to the moon.

    So why hasn't the Pi taken us to Mars? Something is wrong with your logic.

  30. Re:Poop in my mouth by Anonymous Coward · · Score: 0

    Is this you? https://pics.onsizzle.com/aghghghhblanmuuughnom-nomnormnomnomnom-i-can-aff-thats-not-just-shit-why-6488225.png

  31. Leaky Abstractions. by Anonymous Coward · · Score: 0

    "Meltdown and Spectre are examples of what happens when we reason about security in the context of that abstraction, and then encounter minor discrepancies between the abstraction and reality.

    There's a book about this called leaky abstractions. This phenomena is nothing new.

  32. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Nah, really, not his fault. He's just using Intel chips....

  33. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Then clearly we can conclude that ARM Holdings know very little about their own cores, as opposed to Raspberry Pi founder and CEO Eben Upton. /sarcasm

    Congratulations you just won the presumptuous rhetorical idiot of the year award. /sarcasm

  34. Re:Irrelevant by Anonymous Coward · · Score: 0

    Last time I checked we don’t live in the 90s anymore and those computers look like mere toys compared to the CPUs of today. Laughably so when even a dinky Intel m3 is many times faster.

    Well, it has to be many times faster to run the toy bloatware that is Windows or Gnome.

    Just like gases and cats expand to fill spaces, UI code expands to suck up all available CPU cycles. Compiz effects are the flaming GIFs of the cheesy websites of two decades ago.

  35. Re:The slowest CPU in the world by Anonymous Coward · · Score: 0

    Now faster and more secure than any intel cpu!!!!

  36. Re:Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Depends. What's the chip used in your Arduino setup? There's been a host of official, clones, and Arduino-like boards out there.

    A (very?) few use Intel's Quark. I don't see Quark listed, but maybe Intel overlooked it, since I see another post where supposedly it has the management engine in it (which was introduced I think later so I'm somewhat surprised that small but new chip has it) which is another whole set of problems. If you have a generic Arduino, you probably don't have a Quark cpu.

    Some Arduino's use the Atmel chips. I haven't heard anything listed. Though I wonder how thorough researches have been, given all the in house designed silicon these days, like Samsung's octacores.

    Many Arduinos use ARM Cortex M0+ and M03. Both are not listed as vulnerable to any 3 or 4 variants out there.

    If you use Beagleboard like I do (ARM Cortex-A8), it's vulnerable to the lesser issue, Spectre, so that'll likely get fixed when Linux distros update. (I've got 3 intel laptops, so those are going to Linux anyways or air gapped, plus 1 tablet, so on the latter, I'm still searching for when when Android OSs were or will be fixed, esp those -not- running the latest versions--Google is such a f*N mess).

  37. Re:The slowest CPU in the world by Xenx · · Score: 1

    I'm sure people that use the Pi care. I mean, based on you eloquent definition of their speed, they don't have much headroom for a performance drop.

  38. Re:Irrelevant by nnet · · Score: 1

    yes it does, as long as you're russian :)

  39. Re:Irrelevant by Anonymous Coward · · Score: 0

    ok E-Peen Jong Un. You're cool, "bro".

  40. Re:Irrelevant by Anonymous Coward · · Score: 0

    not even close. It is slower than a Pentium MMX running at 250 Mhz.

  41. a long way of saying by Anonymous Coward · · Score: 0

    That RPi hardware is an obsolete crap.

    1. Re:a long way of saying by Anonymous Coward · · Score: 0

      The raspberry pi is fine for it's intended purpose, embedded computing projects. It is NOT a desktop replacement.

    2. Re:a long way of saying by Anonymous Coward · · Score: 0

      "The raspberry pi is fine for it's intended purpose"

      Unlike that apostrophe. it's means it is.

    3. Re:a long way of saying by ChunderDownunder · · Score: 1

      It is NOT a desktop replacement.

      Well it could be if it supported more than a gig of RAM and 4K graphics.

      i.e. as found in the VideoCore V implementation of the forthcoming rPi 4.

  42. Re:Irrelevant by Anonymous Coward · · Score: 0

    Cool story, Drumpf.

  43. Re:Irrelevant by jiriw · · Score: 1

    One word: Lousy programmers.

    See? Most* can't even estimate their own workloads. It always takes twice as much as planned.
    And then there are 'managers'... who prevent us from using assembly the way it's meant to be used. They want to *shudder* 'understand' what we write and collaborate and a fancy UI and garbage collection (there is a lot of garbage surrounding our little blue planet) and *fill in favorite hype/buzzword* using *popular piece of office software they say they can actually be productive in*. So everything has to go through compilers and various frameworks and engines and virtual machines... 10 levels of bloat. And that's why you need a hexadeca Core-i9 instead of a quad Cortex-a53...

  44. Re:Poop in my mouth by Anonymous Coward · · Score: 0

    Yes, Chris has been waiting his turn for months now!

  45. I don't think it's just because the CPU is cheap by Solandri · · Score: 1

    Speculative execution requires the CPU to do operations which it might be called upon to do in the future, then throw away the results if it turns out the code doesn't call for that operation. There's got to be an energy cost associated with that since you're making it do a bunch of operations it doesn't need to do. ARM SoCs are mostly used on mobile devices whose only power source is a battery. So it makes sense that they wouldn't incorporate energy-wasting "features" like speculation.

  46. Re: Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Am I missing something here? Most arduino that I know dont even have threads, nevermind processes or virtual memory. They already suffer from a vulnerability called "all user code has permission to read all system memory"

  47. Re:Irrelevant by Anonymous Coward · · Score: 0

    Good thing you don't need to be an olympic athlete to do useful everyday things like walk to the store.

  48. Re:Irrelevant by Anonymous Coward · · Score: 0

    The CPUs of today have the power to do real-time video encoding and AI, but instead of that we use them to ... browse the web. Watch YouTube. Do text chat on Slack. Upload files to Git servers. I can't remember the last time I asked my home computer to do anything that required real CPU power, except I've noticed web pages full of scripts causing the internet to slow to a crawl, because my browser is processing 100X more data than I asked for.

    Give me a Pi and let me control what it does, and it'll have more than enough CPU power for most things I do. Anything I need a real CPU for, I can do on a standalone PC and don't need to worry about attacks.

    What we really need are devices like the Raspberry Pi for untrusted connections (i.e. most of them), and a real PC for heavy lifting and doing private work like taxes. Configure them to send to a central set of displays, but they should not be connected to each other.

  49. Complainers == Microsoft Monkeys and Java Jockeys by Anonymous Coward · · Score: 0

    People complain about the speed of the Pi.

    The Pi is designed for embedded applications and learning.

    embedded applications have low memory requirements, and have programmers that know how to code to those constraints. The average Microsoft Monkey, and Java Jockey is not in that group.

    The Pi makes for a great learning platform. Microsoft Monkeys and Java Jockeys can use it to build their skills and ensure their code has acceptable performance on even low resource platforms. And the hardware is cheap, so if they break it [almost impossible] they can graduate to more advanced hardware once their skills improve.

    There are too many Microsoft Monkeys and Java jockeys that think bubble sort is ok, and using huge arrays is ok, since everyone has 16Gb of ram, and 4Ghz CPUs with 8 cores. This is why Windows performance is terrible, and most Java Jockeys concentrate on cursor animations instead of the core functionality of their crapplets.

  50. From owner of three Raspberry PI 3 by Max_W · · Score: 1

    Raspberry PI 3 is far from a toy. The main thing is to install the Raspbian Lite without GUI desktop. Most of the computing "power" is spent on handling of the HD, 4K, 8K, etc. display.

    I installed Apache 2, PHP 7, SSH, SFTP on one RPI3 and MySQL database on another. This system is incredibly stable and quite fast. I think of moving to self-hosting with this setup. It practically does not consume any electricity.

    I realize now that it does not requite too much computing power to send HTML files and even JPGs to a network.

    Raspberry PI 3 is a good hardware for learning server administration. I plan to move from MySQL to PostgreSQL. On RPI3 it is possible, on my commercial hosting service it is not possible.

    1. Re:From owner of three Raspberry PI 3 by DamonHD · · Score: 2

      I run a similar setup (ie my entire primary server set including HTTP, NTP, DNS, etc) on an RPi2.

      Does its job very well and uses only 1W most of the time enabling me to keep them off-grid:

      http://www.earth.org.uk/note-o...

      http://www.earth.org.uk/_off-g...

      I see various people pissing all over the RPis here, but they really are remarkable, and bigger is not always better. It depends on the application.

      Rgds

      Damon

      --
      http://m.earth.org.uk/
    2. Re:From owner of three Raspberry PI 3 by drinkypoo · · Score: 1

      I installed Apache 2, PHP 7, SSH, SFTP on one RPI3 and MySQL database on another.

      I've experimented with all of that. Performance was... well, let's just say it was shit. The lack of memory is the big problem. There just isn't enough. This is why I got a Pine A64+. Which, of course, is arm64 and probably vulnerable :p

      I do use an original raspi as a serial redirector, which is about its speed. I might swap that out for an esp8266 though, which can handle that job. I also have a zero w which I plan to mount on my dead cat, but I have many projects ahead of that one.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  51. Re:I don't think it's just because the CPU is chea by Anonymous Coward · · Score: 0

    So it makes sense that they wouldn't incorporate energy-wasting "features" like speculation.

    It's not the "energy wasting", It's the silicon area required and the corresponding decrease in yield. You're talking about $1 processors that are cranked out in massive quantity for the lowest possible price. More stuff on the SOC means more cost all around. At the next step down from here, the virtual memory unit is ditched, again not for energy consumed but because it's complex and increases die size and cost.

  52. Re:I don't think it's just because the CPU is chea by Ramze · · Score: 2

    considering what little CPU percentage is used by the average PC user, there may be an argument for desktops and laptops not needing it either.... Maybe even for data centers where large caches are more important than branch predictions.

    I know, I know... Insanity! Branch prediction is like... 75% to 99% correct, so it's not that much of a waste... and pipelines are long... but, Intel just helped put out a patch that wipes cache when switching between user mode and kernel mode and your average user can't tell their machine is 5% to 20% slower... b/c their quad core CPU is idling below 10% anyway.

    The trend lately is towards low power chips for users at all levels -- even data centers... and trending towards mobility for users. Phones, tablets, chromebooks, laptops that are basically tablets, etc.

    If I have to decide between a fat cache that doesn't get flushed in the name of security vs speculative processing... for whatever spectre or related exploit may be around the corner, I think I might rather have the cache. If every time a file server randomly accesses a database, their entire cache is flushed to protect against a bug... I could see where turning off branch prediction if possible might be a better solution than flushing the cache. A cache miss can be huge -- many orders of magnitude longer than waiting several cycles to execute something that wasn't predicted, but was pre-fetched at least.

  53. Re:Poop in my mouth by Anonymous Coward · · Score: 0

    I'm BeauHD, not Chris.

  54. Re: Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    You don't need a full-blown server for basic web stuff. I host my website on a handful of shift registers and an NTE555.

  55. No instruction pipeline cache == feature by tlambert · · Score: 3, Funny

    No instruction pipeline cache == feature.

    Yeah all ARM7 cores have that "security feature".

    I hear PC-XT's are making a comeback, because most malware won't fit in 640K any more.

    So having only 640K is a "security feature".

  56. accessible by bugs2squash · · Score: 2

    That's the most accessible description of these issues that I have read about to date. Everything else has either been difficult to follow or just plain arm-waving and jargon designed to make the storyteller look all 1337.

    --
    Nullius in verba
  57. Re:Irrelevant by Anonymous Coward · · Score: 0

    Those early 90s computers aren't vulnerable to this exploit nor any IME AMT shenanigans.

  58. Re:Irrelevant by Anonymous Coward · · Score: 0

    But when you're just trying to run for the bus does it matter that you aren't capable of breaking a world record as long as you get there?

  59. Re:Irrelevant by Z00L00K · · Score: 1

    They are still suitable for various small embedded solutions. Not every computing task requires petaflop performance.

    I'm not saying that the Raspberry Pi is the ideal solution, but sometimes the most amazing solutions comes out of implementations made on low performance devices while high performance devices instead allows for bloatware.

    --
    If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  60. Re:Irrelevant by Z00L00K · · Score: 2

    If you learn to make a solution on a low performance device then you will become a better coder less prone to make inefficient solutions.

    You can always make something that works, but to do something efficient takes skill.

    --
    If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  61. Re:Irrelevant by Z00L00K · · Score: 1

    In Soviet Russia Olympians makes you.

    --
    If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  62. MS released patch for Win7 vs. Meltdown/Spectre by Anonymous Coward · · Score: 0

    See subject: They did so early (last night) even for Win7 users & I applied it - & may sound strange but I'm FASTER vs. before it seems (though I should be slower, right?) + all my programs work just fine!

    * Whatever they did ontop of this kernelmode separation between usermode apps & kernelmode I/O drivers MIGHT be the difference but so far, I am liking it!

    APK

    P.S.=> I heard they weren't going to release it until next patch Tuesday 1/10/2017 but I got a ~341++ mb download of it yesterday evening via Windows Update & applied it - the above is based SOLELY on user experience (not 'formal tests') but I expected "lag" in disk defrag OR backup as both perform HEAVY disk I/O - I am NOT - they're fast as ever but overall, everything seems quicker oddly (& I am assuming it contains the patch to Process Control Block/Memmgt + Transition Lookaside Buffers (TLB) changes between usermode/kernelmode programs - why else would they release it early otherwise?)... apk

  63. Re: Complainers == Microsoft Monkeys and Java Jock by Anonymous Coward · · Score: 0

    Microsoft monkey here... at least if you consider a .NET developer a Microsoft monkey. I use Intel vTune Amplifier to optimize memory usage and garbage collection as well as optimizing algorithms. I use .NET as opposed to C++ because of performance. .NET allows me to write code which automatically recompileâ(TM)s itself based on optimal CPU pipelines to reduce or eliminate unnecessary branching and cache misses related to the general shortcoming of precompiled code.

    Add to that scalable implementations of RTTI via reflection allowing for annotation of the AST for intelligent module loading and Iâ(TM)m pretty pleased.

    I am guessing I am not as skilled of a developer as you who clearly would understand better how to optimize code. I only have 25 years professional experience in language design, optimization, operating system design and FPGA development, so Iâ(TM)m pretty new to this whole âoehow to make fast codeâ thing... but Iâ(TM)m pretty sure there must be a .NET guy somewhere who knows how to write good code.

  64. Re: Irrelevant by Anonymous Coward · · Score: 0

    Lol whut? A quad core 1.2 ghz processor is about as fast as a 255 mhz processor from 20 years ago.

  65. Good News! Good News indeed! by Qbertino · · Score: 1

    This should advance the reputation of FOS Hardware further. Which can't be wrong. ... I'm starting to desperately awaits decent quality cheap FOS Hardware ARM Laptop. That would move things forward in this department.

    --
    We suffer more in our imagination than in reality. - Seneca
  66. Addendum/Good news: I'm not the only one by Anonymous Coward · · Score: 0

    See subject: Formal tests (albeit on Win10 vs. 7 I use) show more SPEEDUP vs. slowdown per https://www.techspot.com/article/1554-meltdown-flaw-cpu-performance-windows/ - salient quotes/excerpts:

    "we see very similar sequential read and write results, the figures after the update are actually slightly better, though weâ(TM)re talking just a 1-2% difference here."

    "Interestingly though the 4K-64 thread read and write performance is improved with the patch, the write performance here has been boosted by 17%"

    CrystalBench "single thread score was increased by a percent"

    "same in Blender, the update came in a fraction ahead"

    "Ashes of the Singularity and here we see a small uplift in performance after the patch has been applied. Granted the 1% low result was only improved by 1.7% but still, itâ(TM)s certainly not slower"

    "Battlefield 1 results and using the medium quality settings at 1080p with the GTX 1080 Ti sees similar performance before and after the patch, in fact again after the patch we see a very minor improvement"

    APK

    P.S.=> ONLY 4k - 16k DISK I/O performance seems adversely affected - hence my expected diskdefrag & backup to slowup here (not really seeming so but they're not exactly "FAST PROCESSES" either to begin w/ based on 'feel alone' as I noted here for me)... apk

  67. Re: Oh really? The Cortex-A7 and Cortex-A53.... by Anonymous Coward · · Score: 0

    Wow, have never seen someone do this on slashdot in 20 years. Good for you.

  68. Re: Complainers == Microsoft Monkeys and Java Jock by Anonymous Coward · · Score: 0

    Not bad But if code gets recompiled. there is a time lag. Optimize for the general case first, unless your code is VERY tied to a specific cpu.

    If you need vtune to optimize at that level, your code is either very broken, or your cpu selection very specific.

    Don't even talk to me about garbage collection. If it worked correctly, it would collect itself.

    Then again, I only have 15 years in CPU design on the ARM/Intel and Motorola side, so I must be very new to this whole optimization and branch prediction thing.

    Normally coders don't go into FPGA design, as they initially make horrible FPGA/Verilog designers. Selecting very poor implementations and architectures as they are stuck in "the compiler will optimize this for me" land. Synopsys Design-Compiler is good, but only as good as the start you give it. GIGO and all.

  69. Re:Oh really? The Cortex-A7 and Cortex-A53.... by TheRaven64 · · Score: 1

    Neither the A7 nor the A53 were listed (though the R7 was - I was very surprised to see two realtime cores on the list of things affected by a vulnerability that explicitly relies on nondeterministic execution time). The A8 and A9 were as well, which is also surprising as they're very similar to the A7 and are in-order dual-issue cores.

    --
    I am TheRaven on Soylent News
  70. Re:I don't think it's just because the CPU is chea by TheRaven64 · · Score: 1

    There's got to be an energy cost associated with that since you're making it do a bunch of operations it doesn't need to do.

    True, to an extent, but not entirely. The difference in power consumption between a CPU executing instructions and a CPU in a pipeline stall is fairly small. The difference between a CPU executing instructions and in a sleep state is a lot higher, so you get better power efficiency if you finish fast and go to sleep.

    On wide out-of-order pipelines, you're using a lot of energy just to have the scheduler and register rename units powered. This is why the low-end ARM cores get better performance per Watt than the higher-end ones: they simply omit a large chunk of logic that the more complex cores need.

    It's also a case of return on (power / complexity) investment. A simple single-pipeline in-order core may have 8 stages. If you hit a branch and have no branch predictor, then you stall for 8 cycles waiting for an instruction. The common heuristic is that you have a branch every 7 instructions on average, so now we're seeing the pipeline getting about 50% occupancy. That's pretty bad, so you want a branch predictor. Fortunately, a simple one gives you 90% hit rates, so now you're close to being able to dispatch one instruction per cycle. The difference between 90% and 95% is a lot of complexity in the predictor, for little gain. If you can't speculatively execute all instructions (for example, no speculative memory reads or writes) then that doesn't cost you much performance because you're still speculative executing side-effect-free instructions, and you can do that with simple forwarding rather than complex register renaming.

    Now compare that with a large out-of-order pipeline, where you can have almost 200 instructions in flight (the authors of the Spectre paper found cases of over 180). With a branch every 7 instructions, you need to correctly predict 25 branches in a row to get full pipeline occupancy. That's a big incentive to spend a lot of transistors on clever branch predictors and speculative execution.

    --
    I am TheRaven on Soylent News
  71. Re:THE REAL REASON IS by LordHighExecutioner · · Score: 1

    I'll do from tomorrow, since it seems that my Raspberry III is the safest computer I have here in my room.

  72. Yet it still has USB bandwidth issues. by edgedmurasame · · Score: 1

    Granted, it might not be affected by the two cpu bugs, but they've yet to fix the bandwidth starved bus.

    --
    "Forget the engineers." -Carly Fiorina, briber of MIT Technology Review.
  73. Re:THE REAL REASON IS by Zaiff+Urgulbunger · · Score: 1

    ...because nobody in their right mind does online banking on a RasPi. Those SD cards will go corrupt if you just look at them!

    They're fine for the most part (SD-cards in R-Pi's). And Raspbian being basically Debian, is totally solid. The only thing that would concern me with regards to online banking would be that the version of Chromium they ship tends to be a few versions out of date.

    Aside from that, it's probably safer than most Windows boxes for online banking and almost certainly safer than using a smart-TV.

  74. Re: Irrelevant by joemck · · Score: 1

    This. And even running bloated modern software, a Pi 3 or compute stick plugged into a keyboard, mouse and monitor would be sufficient for most of my day to day business and casual computing tasks. If you already have a suitable screen, the device itself plus a cheap keyboard and mouse are quite affordable too.

    Cheap used laptops are sufficient for everyday tasks as well, at least after replacing the aging HDD with an SSD. But that brings the price higher than Pi 3+MicroSD+keyboard+mouse.

    Our phones are powerful enough too - if only there were cheap laptop-like shells we could slot them into, and a good desktop interface it would switch into.

  75. Re: Irrelevant by toddestan · · Score: 1

    One of the things that hurts the Pi is that all the I/O is done through USB, and a lot of micro SD cards are not very fast - which isn't usually a big deal until you're using one as your OS drive.

    Finally, clock for clock, ARM just isn't as fast as x86. It may be a 1.2GHz quad-core, but looking at MIPs, it's about the same as a mid-range P3, which is a single core. One of the reasons is in the TFA - the Pi doesn't do speculative branching like P3 does. My guess is that for anything single-threaded, you're probably looking at something more like Pentium MMX performance levels.

    Overall, it's hard to say how the Pi stacks up. A lot will depend on what you are trying to do with it. If you're trying to use it as a desktop, you'll find it quite a bit slower than a higher-end P3 system, as the P3 will have the benefit of a faster hard drive, dedicated GPU, ethernet not hanging off the USB bus, etc. For other things like heavy number crunching it may be more comparable.

  76. Re:Irrelevant by Lunix+Nutcase · · Score: 1

    It might if the bus is 100s of feet away.