comp.lang.ada
 help / color / mirror / Atom feed
* Ada lacks lighterweight-than-task parallelism
@ 2018-06-19 22:14 Dan'l Miller
  2018-06-19 22:23 ` Dan'l Miller
                   ` (4 more replies)
  0 siblings, 5 replies; 39+ messages in thread
From: Dan'l Miller @ 2018-06-19 22:14 UTC (permalink / raw)


http://www.theregister.co.uk/2018/06/18/microsoft_e2_edge_windows_10

As discussed in the article above, Microsoft is starting to unveil its formerly-secret development of what could be described as “Itanium done right“.

Whereas Itanium was VLIW jammed force-fit into an otherwise traditional ISA that had 8 concurrent sub-instructions per VLIW-instruction (and where most simultaneous multithreading [SMT] processor cores can execute up to 2 threads per processor-core on Intel, AMD, and IBM POWER processors), Microsoft's Explicit Data Graph Execution (EDGE) processor slices programs into up to 32 independent slices per thread/task.

Whereas Itanium insisted on the •compiler• at engineering-time finding 8 independent slices within a program, EDGE performs the analogue of such analysis in hardware at runtime—hence, overcoming one of Itanium's fatal flaws.  (The other fatal flaw on which Itanium was misfounded was that the compiler could not predict at engineering-time the wildly varying latencies of L1 cache versus L2 cache versus L3 cache versus local DRAM versus ccNUMA-network DRAM; EDGE appears to mitigate that as well by apparently picking slices with the same timing characteristics or compatibly-interleavable timing characteristics.)

And EDGE processor is being currently sampled at 10nm manufacturing process through Qualcomm.

And Windows 10 has been successfully ported to EDGE processor (which is starting to look like a future product announcement for some forthcoming new Microsoft device).

And viola neither Ada nor POSIX threads, on the front end, have representations of slices.  Nor do any extant Ada compilers have representation of slices on the backend—which is a true shame because slices would have been one of the enabling technologies for Itanium 18 (!) years ago.  18 years ago.  I think Rumpelstiltskin slept for less time duration than that.

And this initial era of EDGE appears to be single-core.  Imagine 2-core and 4-core and 8-core editions in the future for 64-, 96-, and 128-slice parallelism.

Ada for the Cold War in 1983 would focus on tasks as the only vehicle for parallelism.  Ada for the 21st century would also embrace/facilitate slices somehow, via some sort of locality of reference or via some sort of demarcation of independence.


^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2018-07-02 16:48 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-19 22:14 Ada lacks lighterweight-than-task parallelism Dan'l Miller
2018-06-19 22:23 ` Dan'l Miller
2018-06-20  0:03 ` Dan'l Miller
2018-06-20  0:41 ` Lucretia
2018-06-20  1:36   ` Dan'l Miller
2018-06-20 13:39     ` Luke A. Guest
2018-06-20  1:12 ` Shark8
2018-06-20  1:41   ` Dan'l Miller
2018-06-20  7:13     ` Dmitry A. Kazakov
2018-06-20 12:03       ` Dan'l Miller
2018-06-20 12:29         ` Dmitry A. Kazakov
2018-06-20 13:14           ` Mehdi Saada
2018-06-20 13:38             ` Dmitry A. Kazakov
2018-06-20 14:01               ` Mehdi Saada
2018-06-20 14:32                 ` Dmitry A. Kazakov
2018-06-29 22:01                   ` Randy Brukardt
2018-06-29 22:15                     ` Dmitry A. Kazakov
2018-06-29 22:47                       ` Randy Brukardt
2018-06-30  8:41                         ` Dmitry A. Kazakov
2018-06-30 15:43                           ` Brad Moore
2018-07-01  9:46                             ` Dmitry A. Kazakov
2018-07-02 13:13                               ` Marius Amado-Alves
2018-07-02 15:05                                 ` Dmitry A. Kazakov
2018-07-02 16:01                                   ` Marius Amado-Alves
2018-07-02 16:48                                     ` Dmitry A. Kazakov
2018-06-20 15:58                 ` Niklas Holsti
2018-06-29 21:58                 ` Randy Brukardt
2018-06-21  0:19               ` Shark8
2018-06-21  9:09                 ` Dmitry A. Kazakov
2018-06-21 14:42                   ` Shark8
2018-06-21 15:55                     ` Dan'l Miller
2018-06-27 11:49                       ` Marius Amado-Alves
2018-06-21 16:06                     ` Dmitry A. Kazakov
2018-06-22 17:06                       ` Shark8
2018-06-22 18:53                         ` Dmitry A. Kazakov
2018-06-21  0:17         ` Shark8
2018-06-20 12:28 ` Brian Drummond
2018-06-21  1:51   ` Dan'l Miller
2018-06-21 10:22     ` Brian Drummond

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox