Shop OBEX P1 Docs P2 Docs Learn Events
"Virtually in parallel"? — Parallax Forums

"Virtually in parallel"?

The latest issue of Nuts and Volts tries to characterize users of various different microcontrollers and it says this about Propeller users:
Often, they're simply bored with the standard architectures and long for the excitement of multiple cogs running virtually in parallel.
"Virtually"? It seems to me they *actually* run in parallel.
«1

Comments

  • kwinnkwinn Posts: 8,697
    David Betz wrote: »
    The latest issue of Nuts and Volts tries to characterize users of various different microcontrollers and it says this about Propeller users:
    Often, they're simply bored with the standard architectures and long for the excitement of multiple cogs running virtually in parallel.
    "Virtually"? It seems to me they *actually* run in parallel.

    Yes, I noticed that last night when I read the article. Errors like that seem to be more common than ever. Definitely has an effect on how seriously I take anything in any media.
  • Heater.Heater. Posts: 21,230
    Strange thing to say. There is nothing "virtual" about COGs, they are real processors. Of course they really run simultaneously, in parallel, as well.
  • evanhevanh Posts: 15,126
    Hmm, what would be virtually in parallel? ... First thought is something like Ladder Logic - An emulation of a parallel execution system that only appears that way without close inspection.
  • AribaAriba Posts: 2,682
    I think virtually parallel means a Barrel processor, like the XMOS.
    The Cogs of the Propeller are real parallel, but hubram access follows also the 'barrel principle'.

    Andy
  • threads?

    Mike
  • JavaScript?

    Mike
  • N&V is the publication that "demonstrated" it was Okay to drive a blue LED from an Ardu*n* pin without a resistor (July 2017 Q&A). While I accept without question anything they publish written by a "Parallaxer", they are certainly not without fault.
  • JonnyMacJonnyMac Posts: 8,912
    edited 2017-12-03 03:02
    I have direct contact with the publisher/editor. I will send her a note. I will also include a corrective statement in my March column (Jan has already been submitted).

    Edit: I've been traveling so I just saw that piece this morning. I find it silly at best, if not outright offensive. Especially...

    "I welcome your take on what a person's preferred board says about them, even if you don't have "hard evidence" to back up your findings."

    What the actual hell? To me, this is a ridiculous statement, especially in the wake of Make CEO Dale Dougherty's public statement that maker Noami Wu was not a real person, but a persona created by a group of males (he has since publicly apologized). Bergeron's parting comment sounds like an invitation to trash talk those who don't use the same processor, and it completely violates the open and inviting spirit of Nuts & Volts and Servo magazines.
  • evanhevanh Posts: 15,126
    Ariba wrote: »
    The Cogs of the Propeller are real parallel, but hubram access follows also the 'barrel principle'.
    True for the Prop1, but Prop2 HubRAM is parallel enough to be called that. While the sequencing enforces no two Cogs can hit a single memory location at once, all Cogs can still hit HubRAM in parallel.
  • Ariba wrote: »
    I think virtually parallel means a Barrel processor, like the XMOS.
    The Cogs of the Propeller are real parallel, but hubram access follows also the 'barrel principle'.

    Andy
    Huh? I thought the XMOS cores ran in parallel as well up to a certain number of threads on a single core.

  • David Betz wrote: »
    Ariba wrote: »
    I think virtually parallel means a Barrel processor, like the XMOS.
    The Cogs of the Propeller are real parallel, but hubram access follows also the 'barrel principle'.

    Andy
    Huh? I thought the XMOS cores ran in parallel as well up to a certain number of threads on a single core.
    Okay, I see now. Up to 4 "logical cores" can run at full speed on each "tile". If you run more than 4 logical cores the speed of each core slows down.

  • evanhevanh Posts: 15,126
    edited 2017-12-01 17:45
    David Betz wrote: »
    Okay, I see now. Up to 4 "logical cores" can run at full speed on each "tile". If you run more than 4 logical cores the speed of each core slows down.
    Logical and virtual are interchangeable terms. Even at full speed, the "logical cores", aka threads, are time sliced execution. So can be called concurrent but not parallel.

    EDIT: What they call a tile is a real core.
  • evanh wrote: »
    David Betz wrote: »
    Okay, I see now. Up to 4 "logical cores" can run at full speed on each "tile". If you run more than 4 logical cores the speed of each core slows down.
    Logical and virtual are interchangeable terms. Even at full speed, the "logical cores", aka threads, are time sliced execution. So can be called concurrent but not parallel.

    EDIT: What they call a tile is a real core.
    They're not really time sliced. Each core seems to have a four stage pipeline so there is always an instruction in each of the stages. Up to 4 threads run without an interference from the others. In other words, a single logical core will not run any faster than 4 logical cores on a single tile. If you run more than 4 on a single tile you end up time slicing.

  • evanhevanh Posts: 15,126
    edited 2017-12-01 18:16
    David Betz wrote: »
    They're not really time sliced. Each core seems to have a four stage pipeline so there is always an instruction in each of the stages.
    They're slicing at all times. I'll explain why below. It has pipeline properties because a context state has to be maintained no matter how fast or slow the execution goes. There is eight threads per tile so eight of everything (*1) is needed. In particular, to maintain task isolation, eight physical sets of the processor registers has to exist.
    Up to 4 threads run without an interference from the others. In other words, a single logical core will not run any faster than 4 logical cores on a single tile. If you run more than 4 on a single tile you end up time slicing.
    The reason why it's 4 (actually, I believe that is 5 for later models) is because, like the Prop1, anything shorter and you have to start coding around the instruction fetching order. That can be confusing at the least and introduce potential bugs.

    So, instead of having execution overlapping instruction fetches (and the usually pipelined speed up), they opted for time sliced threads instead.

    You just have to look at the clock rate vs MIPS to see this.

    EDIT: NOTE: (*1) "everything" is too broad a statement. I meant everything that holds a state, like the program counter for example. There is only one execution unit for the whole tile.
  • evanh wrote: »
    David Betz wrote: »
    They're not really time sliced. Each core seems to have a four stage pipeline so there is always an instruction in each of the stages.
    They're slicing at all times. I'll explain why below. It has pipeline properties because a context state has to be maintained no matter how fast or slow the execution goes. There is eight threads per tile so eight of everything is needed. In particular, to maintain task isolation, eight physical sets of the processor registers has to exist.
    Up to 4 threads run without an interference from the others. In other words, a single logical core will not run any faster than 4 logical cores on a single tile. If you run more than 4 on a single tile you end up time slicing.
    The reason why it's 4 (actually, I believe that is 5 for later models) is because, like the Prop1, anything shorter and you have to start coding around the instruction fetching order. That can be confusing at the least and introduce potential bugs.

    So, instead of having execution overlapping instruction fetches (and the usually pipelined speed up), they opted for time sliced threads instead.

    You just have to look at the clock rate vs MIPS to see this.
    My point is that the clock rate vs MIPS is constant up to 4 logical cores running. After that it decreases with each additional logical core.

  • evanhevanh Posts: 15,126
    I'm explaining how that works.
  • evanh wrote: »
    I'm explaining how that works.
    Okay, thanks! I have a few XMOS boards kicking around but I never found time to do anything with them. The Propeller seems more fun! :-)

  • ErNaErNa Posts: 1,738
    Virtually parallel means: we are living in a simulation (like in MATRIX) and all the parallel processing we believe so see is just serial multitasking. So there is a deep state machine behind all the stuff and whenever someone tries to fool the system by making one task more important (the MTGA effort) this will result in the breakdown of the whole system. The solution is to create real cooperative parallel propelling systems, in short: P2 ;-) This will allow to use old principles again and will lead to an unprecedented FAX reduction as have never been seen in history.
  • JonnyMacJonnyMac Posts: 8,912
    edited 2018-05-08 01:22
    Well, the first double issue of Nuts & Volts arrived today, and to my displeasure they cut out my rebuttal to the ridiculous editorial by Brian Bergeron.

    I am in fact considering walking away from the column. They are a year behind in payments (it has been up to two at times), there has been no change in what I am paid for a column since I started with them in 1997, and the publisher has allowed an editor to malign a product (my opinion) without allowing me -- the guy who writes about that product for the magazine -- to respond.

    I submitted this for March. They said I was too late (not sure I believe that now). I was not notified that this material would be removed from my column.

    I've attached a PDF of the [raw] material cut from my "Programming in the Real World" column that appears in the May/June issue of Nuts & Volts. Again, it's my rebuttal to the editorial that inspired this thread.
  • jmgjmg Posts: 15,140
    JonnyMac wrote: »
    Well, the first double issue of Nuts & Volts arrived today, and to my displeasure they cut out my rebuttal to the ridiculous editorial by Brian Bergeron.

    I submitted this for March. They said I was too late (not sure I believe that now). I was not notified that this material would be removed from my column.

    I've attached a PDF of the [unedited] material cut from my "Programming in the Real World" column that appears in the May/June issue of Nuts & Volts. Again, it's my rebuttal to the editorial that inspired this thread.

    Valid points, but are you really surprised they removed the comments ? - no Editor is going to want to publish something that makes them look foolish.

    JonnyMac wrote: »
    I am in fact considering walking away from the column. They are a year behind in payments (it has been up to two at times), there has been no change in what I am paid for a column rate since I started with them in 1997, and the publisher has allowed an editor to malign a product (my opinion) without allowing me -- the guy who writes about that product for the magazine -- to respond.

    Does sound like it is time for a pay rise :)

    I guess the background questions here are, can they afford to pay more and are they over-supplied with eager writers ?

  • Valid points, but are you really surprised they removed the comments ? - no Editor is going to want to publish something that makes them look foolish.
    If you read my rebuttal, I think you'll agree that I only try to set the record straight, and go out of my way to suggest that Mr. Bergeron while wrong, was not intentionally malicious.
    Does sound like it is time for a pay rise
    Fat chance. Like many print magazines, they seem to be barely hanging on.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2018-05-08 02:52
    Jon, when a payor is circling the drain, sometimes it's prudent just to pull the plug and not to look back.

    I'm probably owed a few hundred thousand in royalties from a concern that went TU. But I've moved on and haven't lost any sleep over it.

    You've done due diligence and have contributed an enormous amount of value to that publication. I'm sure there are other outlets to pursue for your wisdom and creativity.

    Thanks for the many years we've all enjoyed!
    -Phil
  • @jmg, regarding the point about not looking foolish requires the publisher to read what was/will be published. Reading the excerpts Jon addressed, they did a 7734 of a good job looking exactly that.
  • Jon,

    I think you would be more persuasive if you provided a circuit and code that demonstrates how the Propeller is truly Parallel and then ask readers to try it and see it for themselves.
  • JonnyMacJonnyMac Posts: 8,912
    edited 2018-05-08 05:27
    I think you would be more persuasive if you provided a circuit and code that demonstrates how the Propeller is truly Parallel and then ask readers to try it and see it for themselves.
    I demonstrate multi-cog projects in every column -- including the one published in May, a real-world job (for the TV show "Black Lightning") where we used a Propeller to replace an Arduino that just wasn't up to the task.
  • Well, that does it, N&V have lost my respect and the renewal notice they've sent will be processed accordingly as waste paper.

    A magazine should not be so biased unless perhaps it was entitled "Fritzing with Arduino" but then you wouldn't have Propeller columns in it anyway. To effectively slander a product and the company that has proven its excellence and worth time and time again is beyond comprehension. NOT PROFESSIONAL!

  • Magazines / 2 = price * 2
    I will not renew my payment.
  • I gave up on N&V when they (Q&A in Feb 2017) doubled down on their assertion that it was okay to drive LEDs without a current limiting resistor.
  • ErNaErNa Posts: 1,738
    Hello JonnyMac, it is very refreshing to hear a clear voice, assembling the right words to a correct sentence (and not only one) to express a clearly defined opinion coming from the most left part of the States (if looked North pointing upward when standing on your feed). It gives hope to us all!
  • Jon, when a payor is circling the drain, sometimes it's prudent just to pull the plug and not to look back.

    I'm probably owed a few hundred thousand in royalties from a concern that went TU. But I've moved on and haven't lost any sleep over it.

    You've done due diligence and have contributed an enormous amount of value to that publication. I'm sure there are other outlets to pursue for your wisdom and creativity.

    Thanks for the many years we've all enjoyed!
    -Phil
    I have notified Nuts & Volts of my decision not to continue as a regular contributor.

    Thank you for your kind words, Phil, and for your valuable contributions to the Propeller community.

Sign In or Register to comment.