...which is the subject of a post on "Perils of Parallel." http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
I often wonder what the benefit is to "Virtual SMP" huge boxes when no
single piece of software seems to be able to eat up that much of a box.
Maybe Oracle DB, and 64-bit Citrix XenApp come to mind, but aside from that,
farms of single servers running 10-20 VMs each seem to be the norm.
Certainly hypervisors can eat up cores, but who wants to put that many eggs
in a basket when you can spread the risk out among multiple boxes ?
As long as cores keep multiplying and the proc prices remain the same, the
market will be more than happy to have the extra performance (even though
CPU scheduling is what hypervisors seem to do best..)
I thought 3Leaf had some facility to aggregate and and share MEMORY as a
resource among multiple devices. RAM, although cheap, is probably a dearer
resource than CPU.... If it could be shared dynamically as storage can,
that would be a pretty decent breakthrough in architecture.
On Sun, Nov 8, 2009 at 9:09 PM, Greg Pfister <greg.pfis...@gmail.com> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
I agree with you. Multicore has to be accounted in the clouds. Azure and
Google Apps Engine will have to support multithreaded code on
multiprocessors.
Creating threads on the cloud not only should be available but it should
scale to the number of cores you require. The technology in PaaS will have
to evolve to really simulate a single computer with cores-on-demand when it
executes code, using the cloud fabric. If I want to create a thread, I
should be able to do it, and then when a thread executes it should do so in
a single core, thus creating real parallelism.
PaaS has to support real parallelism either as threads or as tasks. There
are several ways to accomplish this, using simple Agents and Tasks
architecture. Obviously implementing such fabric is not as simple. Right now
when you create a service or a worker in Azure it runs on one machine, and
it scales by installing on different VMs using the cloud fabric. So it is
using Parallelism but not multicore.
I think PaaS will, like the article suggests, move up the ladder technology
wise, and it will provide multicore deveolpment in the end.
Regards,
Alex.
On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
to Cloud. We have had SMP since the early 90's with few apps (or even
Operating Systems) taking full advantage. This is a not a new issue, but an
old one. Software not keeping up with hardware. Tweaking compilers is not
the answer. Perhaps re-vamping our Education system is.
On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> I agree with you. Multicore has to be accounted in the clouds. Azure and
> Google Apps Engine will have to support multithreaded code on
> multiprocessors.
> Creating threads on the cloud not only should be available but it should
> scale to the number of cores you require. The technology in PaaS will have
> to evolve to really simulate a single computer with cores-on-demand when it
> executes code, using the cloud fabric. If I want to create a thread, I
> should be able to do it, and then when a thread executes it should do so in
> a single core, thus creating real parallelism.
> PaaS has to support real parallelism either as threads or as tasks. There
> are several ways to accomplish this, using simple Agents and Tasks
> architecture. Obviously implementing such fabric is not as simple. Right now
> when you create a service or a worker in Azure it runs on one machine, and
> it scales by installing on different VMs using the cloud fabric. So it is
> using Parallelism but not multicore.
> I think PaaS will, like the article suggests, move up the ladder technology
> wise, and it will provide multicore deveolpment in the end.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>wrote:
>> ...which is the subject of a post on "Perils of Parallel."
>> http://bit.ly/Gys2Y
>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
>> yes. PaaS, no, but that's because the dominant platform paradigm
>> doesn't do multicore much.
Multi-cores in particular and massive parallelism in general is definitely
going to be the future. Clouds are going to be platforms for real-time deep
analytics and consequently a high degree of intelligence "juicer" (for the
lack of better word).
In ML, AI and Analytics, a lot information is approximated or inferred based
on processing of sample set of data. With multi-cores a LOT more
information/data can be analyzed in real-time and your probablistic models
will be much more accurate.
Imagine, no one could predict the "greatest recession in 60 years" despite
all the economic metric models and the mega super computing power available
today. Many Clouds size intelligence is needed to thwart this kind of fiasco
next time around.
So yes, multi-cores and Cloud/massive parallelism is the foundation for the
era of super intelligent machines that will pervade us in the next 20 to 50
years.
[mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
Sent: Sunday, November 08, 2009 8:10 PM
To: Cloud Computing
Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
...which is the subject of a post on "Perils of Parallel."
http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
"Tweaking compilers is not the answer. Perhaps re-vamping our Education
system is. "
How many human beings can handle multi-tasking?...Human beings/brains are
sequential entities, hence the problem.
_____
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Jan Klincewicz
Sent: Sunday, November 08, 2009 9:36 PM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
to Cloud. We have had SMP since the early 90's with few apps (or even
Operating Systems) taking full advantage. This is a not a new issue, but an
old one. Software not keeping up with hardware. Tweaking compilers is not
the answer. Perhaps re-vamping our Education system is.
On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza
I agree with you. Multicore has to be accounted in the clouds. Azure and
Google Apps Engine will have to support multithreaded code on
multiprocessors.
Creating threads on the cloud not only should be available but it should
scale to the number of cores you require. The technology in PaaS will have
to evolve to really simulate a single computer with cores-on-demand when it
executes code, using the cloud fabric. If I want to create a thread, I
should be able to do it, and then when a thread executes it should do so in
a single core, thus creating real parallelism.
PaaS has to support real parallelism either as threads or as tasks. There
are several ways to accomplish this, using simple Agents and Tasks
architecture. Obviously implementing such fabric is not as simple. Right now
when you create a service or a worker in Azure it runs on one machine, and
it scales by installing on different VMs using the cloud fabric. So it is
using Parallelism but not multicore.
I think PaaS will, like the article suggests, move up the ladder technology
wise, and it will provide multicore deveolpment in the end.
Regards,
Alex.
On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com> wrote:
...which is the subject of a post on "Perils of Parallel."
http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
I believe that it is the responsibility of the PaaS to deliver a
programming model which will enable application developers to take
advantage of both multicore and the distributed environment.
Actually, there are some models for that at the moment. Some of them
try to over simplify (in my opinion) the problem and 'hide' multicore
and inter-process communication while others provide semantics within
the APIs to enable the application to exploit these technologies.
In any case, it is clear that the platforms can not just ignore it.
Guy
On Nov 9, 6:29 am, "Rao Dronamraju" <rao.dronamr...@sbcglobal.net>
wrote:
> Multi-cores in particular and massive parallelism in general is definitely
> going to be the future. Clouds are going to be platforms for real-time deep
> analytics and consequently a high degree of intelligence "juicer" (for the
> lack of better word).
> In ML, AI and Analytics, a lot information is approximated or inferred based
> on processing of sample set of data. With multi-cores a LOT more
> information/data can be analyzed in real-time and your probablistic models
> will be much more accurate.
> Imagine, no one could predict the "greatest recession in 60 years" despite
> all the economic metric models and the mega super computing power available
> today. Many Clouds size intelligence is needed to thwart this kind of fiasco
> next time around.
> So yes, multi-cores and Cloud/massive parallelism is the foundation for the
> era of super intelligent machines that will pervade us in the next 20 to 50
> years.
> [mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
> Sent: Sunday, November 08, 2009 8:10 PM
> To: Cloud Computing
> Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
> ...which is the subject of a post on "Perils of Parallel."http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
For the experts among you on this topic.... is this a viable alternative?
Roundup: Tilera Debuts 100-Core
Processors<http://www.datacenterknowledge.com/archives/2009/10/26/roundup-tilera...>The
company claims its approach has simplified programming for multi-core
processors, which has been cited by
analysts<http://www.datacenterknowledge.com/archives/2008/02/21/multi-core-add...>as
a barrier to adoption of many-core parallel processing. Tilera says
its
two-dimensional iMesh interconnect “*eliminates the need for an on-chip bus
and its Dynamic Distributed Cache (DDC) system allows each cores’ local
cache to be shared coherently across the entire chip*. These two key
technologies enable the TILE Architecture performance to scale linearly with
the number of cores on the chip.
-RD
On Sun, Nov 8, 2009 at 7:35 PM, Jan Klincewicz <jan.klincew...@gmail.com>wrote:
> Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> to Cloud. We have had SMP since the early 90's with few apps (or even
> Operating Systems) taking full advantage. This is a not a new issue, but an
> old one. Software not keeping up with hardware. Tweaking compilers is not
> the answer. Perhaps re-vamping our Education system is.
> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> aespin...@structum.com.mx> wrote:
>> Greg,
>> I agree with you. Multicore has to be accounted in the clouds. Azure and
>> Google Apps Engine will have to support multithreaded code on
>> multiprocessors.
>> Creating threads on the cloud not only should be available but it should
>> scale to the number of cores you require. The technology in PaaS will have
>> to evolve to really simulate a single computer with cores-on-demand when it
>> executes code, using the cloud fabric. If I want to create a thread, I
>> should be able to do it, and then when a thread executes it should do so in
>> a single core, thus creating real parallelism.
>> PaaS has to support real parallelism either as threads or as tasks. There
>> are several ways to accomplish this, using simple Agents and Tasks
>> architecture. Obviously implementing such fabric is not as simple. Right now
>> when you create a service or a worker in Azure it runs on one machine, and
>> it scales by installing on different VMs using the cloud fabric. So it is
>> using Parallelism but not multicore.
>> I think PaaS will, like the article suggests, move up the ladder
>> technology wise, and it will provide multicore deveolpment in the end.
>> Regards,
>> Alex.
>> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>wrote:
>>> ...which is the subject of a post on "Perils of Parallel."
>>> http://bit.ly/Gys2Y
>>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
>>> yes. PaaS, no, but that's because the dominant platform paradigm
>>> doesn't do multicore much.
@Rao, good points all. However, the models are only as good as the
built-in assumptions...e.g. one of the recession triggers was that the
'wunderkind' quants on the Street assumed a 6-8% annual increase in
housing prices, FOREVER, when they built their CDS models and sold the
resultant product to unwitting buyers.
We all know how that worked out.
Super-intelligent machines? Sure, that's great and we all want that.
But I would prefer more intelligent humans, myself, or perhaps humans
with more common sense. As Jan correctly said, that takes education,
not CPUs and RAM.
[mailto:cloud-computing@googlegroups.com] On Behalf Of Rao Dronamraju
Sent: Sunday, November 08, 2009 10:30 PM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
Multi-cores in particular and massive parallelism in general is
definitely
going to be the future. Clouds are going to be platforms for real-time
deep
analytics and consequently a high degree of intelligence "juicer" (for
the
lack of better word).
In ML, AI and Analytics, a lot information is approximated or inferred
based
on processing of sample set of data. With multi-cores a LOT more
information/data can be analyzed in real-time and your probablistic
models
will be much more accurate.
Imagine, no one could predict the "greatest recession in 60 years"
despite
all the economic metric models and the mega super computing power
available
today. Many Clouds size intelligence is needed to thwart this kind of
fiasco
next time around.
So yes, multi-cores and Cloud/massive parallelism is the foundation for
the
era of super intelligent machines that will pervade us in the next 20 to
50
years.
-----Original Message-----
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
Sent: Sunday, November 08, 2009 8:10 PM
To: Cloud Computing
Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
...which is the subject of a post on "Perils of Parallel."
http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
No virus found in this incoming message.
Checked by AVG - www.avg.com Version: 9.0.698 / Virus Database: 270.14.53/2487 - Release Date:
11/08/09 13:39:00
The applications run via a service enabled cloud must be able to adapt
the implementation of that service to whatever computational fabric it
finds. This means that the partitioning of tasks and data for
multicore, bridged multicore or clustered environments cannot be hard-
coded, but must be adaptable. Obviously, this is rare. Most software
is terribly designed massively parallel environments - especially on
HPC clouds.
The cloud service must be agnostic to the particular implementation
details. I'm not sure that is well understood.
Ken Lloyd
On Nov 8, 9:29 pm, "Rao Dronamraju" <rao.dronamr...@sbcglobal.net>
wrote:
> Multi-cores in particular and massive parallelism in general is definitely
> going to be the future. Clouds are going to be platforms for real-time deep
> analytics and consequently a high degree of intelligence "juicer" (for the
> lack of better word).
> In ML, AI and Analytics, a lot information is approximated or inferred based
> on processing of sample set of data. With multi-cores a LOT more
> information/data can be analyzed in real-time and your probablistic models
> will be much more accurate.
> Imagine, no one could predict the "greatest recession in 60 years" despite
> all the economic metric models and the mega super computing power available
> today. Many Clouds size intelligence is needed to thwart this kind of fiasco
> next time around.
> So yes, multi-cores and Cloud/massive parallelism is the foundation for the
> era of super intelligent machines that will pervade us in the next 20 to 50
> years.
> [mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
> Sent: Sunday, November 08, 2009 8:10 PM
> To: Cloud Computing
> Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
> ...which is the subject of a post on "Perils of Parallel."http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
Only half of human brain is sequential, the other is parallel.
It is important that they work in tandem to maintain the life balance.
Here's some video explaining one reference implementation of parallelism in
human brain :)
http://www.youtube.com/watch?v=UyyjU8fzEYU
> Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> to Cloud. We have had SMP since the early 90's with few apps (or even
> Operating Systems) taking full advantage. This is a not a new issue, but an
> old one. Software not keeping up with hardware. Tweaking compilers is not
> the answer. Perhaps re-vamping our Education system is.
> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> aespin...@structum.com.mx> wrote:
> Greg,
> I agree with you. Multicore has to be accounted in the clouds. Azure and
> Google Apps Engine will have to support multithreaded code on
> multiprocessors.
> Creating threads on the cloud not only should be available but it should
> scale to the number of cores you require. The technology in PaaS will have
> to evolve to really simulate a single computer with cores-on-demand when it
> executes code, using the cloud fabric. If I want to create a thread, I
> should be able to do it, and then when a thread executes it should do so in
> a single core, thus creating real parallelism.
> PaaS has to support real parallelism either as threads or as tasks. There
> are several ways to accomplish this, using simple Agents and Tasks
> architecture. Obviously implementing such fabric is not as simple. Right now
> when you create a service or a worker in Azure it runs on one machine, and
> it scales by installing on different VMs using the cloud fabric. So it is
> using Parallelism but not multicore.
> I think PaaS will, like the article suggests, move up the ladder technology
> wise, and it will provide multicore deveolpment in the end.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
"But I would prefer more intelligent humans, myself, or perhaps humans with
more common sense. As Jan correctly said, that takes education, not CPUs
and RAM."
There is a fundamental difference between a intelligent humans and
intelligent machines. Intelligent humans cannot process information at the
speeds at which machines can do. So if the machines are intelligent in
addition to the speed at which they apply this intelligence, then
intelligent solutions are formulated for real world problems in REAL-TIME.
Humans are not good at problem solving in real-time. This is the fundamental
difference. Generally machines will be behind in intelligence than humans.
But with advances in ML, AI and Analytics, they will soon catchup and go
ahead of humans. The time when machines will start to invent and create is
not far away. No it is not science fiction.
[mailto:cloud-computing@googlegroups.com] On Behalf Of Peglar, Robert
Sent: Monday, November 09, 2009 6:08 AM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
@Rao, good points all. However, the models are only as good as the
built-in assumptions...e.g. one of the recession triggers was that the
'wunderkind' quants on the Street assumed a 6-8% annual increase in
housing prices, FOREVER, when they built their CDS models and sold the
resultant product to unwitting buyers.
We all know how that worked out.
Super-intelligent machines? Sure, that's great and we all want that.
But I would prefer more intelligent humans, myself, or perhaps humans
with more common sense. As Jan correctly said, that takes education,
not CPUs and RAM.
Rob
-----Original Message-----
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Rao Dronamraju
Sent: Sunday, November 08, 2009 10:30 PM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
Multi-cores in particular and massive parallelism in general is
definitely
going to be the future. Clouds are going to be platforms for real-time
deep
analytics and consequently a high degree of intelligence "juicer" (for
the
lack of better word).
In ML, AI and Analytics, a lot information is approximated or inferred
based
on processing of sample set of data. With multi-cores a LOT more
information/data can be analyzed in real-time and your probablistic
models
will be much more accurate.
Imagine, no one could predict the "greatest recession in 60 years"
despite
all the economic metric models and the mega super computing power
available
today. Many Clouds size intelligence is needed to thwart this kind of
fiasco
next time around.
So yes, multi-cores and Cloud/massive parallelism is the foundation for
the
era of super intelligent machines that will pervade us in the next 20 to
50
years.
-----Original Message-----
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
Sent: Sunday, November 08, 2009 8:10 PM
To: Cloud Computing
Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
...which is the subject of a post on "Perils of Parallel."
http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
No virus found in this incoming message.
Checked by AVG - www.avg.com Version: 9.0.698 / Virus Database: 270.14.53/2487 - Release Date:
11/08/09 13:39:00
I agree. This is not new. I have been working in obscurity with Multi
processors since 1998 and people are still having problems understanding
asynchrouns programming. I do think that with AJAX, some of it might have
filtered the cracks of the developer's minds, but not all.
I do believe that this is a problem of education. It is very important to
teach sequential programming and combine it with a good methodology for
parallelizing sequential code. I think the book "The Art of Concurrency" by
Clay Breshears approaches programmers with the focus on improving sequential
code.
If you go to Amazon right now, and look for Concurrency or Parallelism books
on Multiprocessors, most of them are very much filled with Math. Which
actually scares most of the developers. I think that is why some developers
haven't really approached working with Multiprocessors.
The fact that the material available is too focused on Math, might be a turn
down for most of the developers, especially enterprise developers.
Regards,
Alex.
On Sun, Nov 8, 2009 at 7:35 PM, Jan Klincewicz <jan.klincew...@gmail.com>wrote:
> Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> to Cloud. We have had SMP since the early 90's with few apps (or even
> Operating Systems) taking full advantage. This is a not a new issue, but an
> old one. Software not keeping up with hardware. Tweaking compilers is not
> the answer. Perhaps re-vamping our Education system is.
> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> aespin...@structum.com.mx> wrote:
>> Greg,
>> I agree with you. Multicore has to be accounted in the clouds. Azure and
>> Google Apps Engine will have to support multithreaded code on
>> multiprocessors.
>> Creating threads on the cloud not only should be available but it should
>> scale to the number of cores you require. The technology in PaaS will have
>> to evolve to really simulate a single computer with cores-on-demand when it
>> executes code, using the cloud fabric. If I want to create a thread, I
>> should be able to do it, and then when a thread executes it should do so in
>> a single core, thus creating real parallelism.
>> PaaS has to support real parallelism either as threads or as tasks. There
>> are several ways to accomplish this, using simple Agents and Tasks
>> architecture. Obviously implementing such fabric is not as simple. Right now
>> when you create a service or a worker in Azure it runs on one machine, and
>> it scales by installing on different VMs using the cloud fabric. So it is
>> using Parallelism but not multicore.
>> I think PaaS will, like the article suggests, move up the ladder
>> technology wise, and it will provide multicore deveolpment in the end.
>> Regards,
>> Alex.
>> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>wrote:
>>> ...which is the subject of a post on "Perils of Parallel."
>>> http://bit.ly/Gys2Y
>>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
>>> yes. PaaS, no, but that's because the dominant platform paradigm
>>> doesn't do multicore much.
"How many human beings can handle multi-tasking?...Human beings/brains are
sequential entities, hence the problem. "
You are right. Not many human beings can handle multi-tasking. also no many
human beings can handle a multiplication of 5642392 by 42325 without help.
I think we need to start teaching about multi-tasking and parallelism to
future generations. It is a problem of education. Just because we can't do
it now, doesn't mean we are never going to make it.
Now I do handle multi-tasking pretty well. I am working on three project at
the same time. People might argue that I am doing a round robin kind of
thing. It might be true. But with the help of the computer I can compile one
application, test another while I am writing a post to this forum. That
amounts to three tasks in parallel.
Now what I do might not be of help to everyone, and not every task can be
parallelized. But that means as human beings, we are capable of thinking
about parallel tasks, with the help of the computer or 'tools', but that is
exactly what parallelism is all about: Getting help. And we can learn to
think on structuring problems in a set of concurrent tasks so that we can
get help either in a form of a computer or tool, or just another human
being.
Regards,
Alex.
On Sun, Nov 8, 2009 at 9:01 PM, Rao Dronamraju <rao.dronamr...@sbcglobal.net
> Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> to Cloud. We have had SMP since the early 90's with few apps (or even
> Operating Systems) taking full advantage. This is a not a new issue, but an
> old one. Software not keeping up with hardware. Tweaking compilers is not
> the answer. Perhaps re-vamping our Education system is.
> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> aespin...@structum.com.mx> wrote:
> Greg,
> I agree with you. Multicore has to be accounted in the clouds. Azure and
> Google Apps Engine will have to support multithreaded code on
> multiprocessors.
> Creating threads on the cloud not only should be available but it should
> scale to the number of cores you require. The technology in PaaS will have
> to evolve to really simulate a single computer with cores-on-demand when it
> executes code, using the cloud fabric. If I want to create a thread, I
> should be able to do it, and then when a thread executes it should do so in
> a single core, thus creating real parallelism.
> PaaS has to support real parallelism either as threads or as tasks. There
> are several ways to accomplish this, using simple Agents and Tasks
> architecture. Obviously implementing such fabric is not as simple. Right now
> when you create a service or a worker in Azure it runs on one machine, and
> it scales by installing on different VMs using the cloud fabric. So it is
> using Parallelism but not multicore.
> I think PaaS will, like the article suggests, move up the ladder technology
> wise, and it will provide multicore deveolpment in the end.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
On Mon, Nov 9, 2009 at 5:21 AM, Khazret Sapenov <sape...@gmail.com> wrote:
> Only half of human brain is sequential, the other is parallel.
> It is important that they work in tandem to maintain the life balance.
> Here's some video explaining one reference implementation of parallelism in
> human brain :)
> http://www.youtube.com/watch?v=UyyjU8fzEYU
> On Mon, Nov 9, 2009 at 12:01 AM, Rao Dronamraju <
> rao.dronamr...@sbcglobal.net> wrote:
>> “Tweaking compilers is not the answer. Perhaps re-vamping our Education
>> system is. “
>> How many human beings can handle multi-tasking?...Human beings/brains are
>> sequential entities, hence the problem.
>> Recognizing multi-thread / multi-core / multi-CPU is not a new issue
>> unique to Cloud. We have had SMP since the early 90's with few apps (or
>> even Operating Systems) taking full advantage. This is a not a new issue,
>> but an old one. Software not keeping up with hardware. Tweaking compilers
>> is not the answer. Perhaps re-vamping our Education system is.
>> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
>> aespin...@structum.com.mx> wrote:
>> Greg,
>> I agree with you. Multicore has to be accounted in the clouds. Azure and
>> Google Apps Engine will have to support multithreaded code on
>> multiprocessors.
>> Creating threads on the cloud not only should be available but it should
>> scale to the number of cores you require. The technology in PaaS will have
>> to evolve to really simulate a single computer with cores-on-demand when it
>> executes code, using the cloud fabric. If I want to create a thread, I
>> should be able to do it, and then when a thread executes it should do so in
>> a single core, thus creating real parallelism.
>> PaaS has to support real parallelism either as threads or as tasks. There
>> are several ways to accomplish this, using simple Agents and Tasks
>> architecture. Obviously implementing such fabric is not as simple. Right now
>> when you create a service or a worker in Azure it runs on one machine, and
>> it scales by installing on different VMs using the cloud fabric. So it is
>> using Parallelism but not multicore.
>> I think PaaS will, like the article suggests, move up the ladder
>> technology wise, and it will provide multicore deveolpment in the end.
>> Regards,
>> Alex.
>> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
>> wrote:
>> ...which is the subject of a post on "Perils of Parallel."
>> http://bit.ly/Gys2Y
>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
>> yes. PaaS, no, but that's because the dominant platform paradigm
>> doesn't do multicore much.
That is not Street alone - unfortunately majority of all the societies have idea of growth oriented economy, but the model does not work anymore because space is finite, and resources too.
I would say that today we have sufficient computing power and capabilities for any sort of tasks worth working on.
Yeap, it is all about humans and their education, or lack thereof....
It is not that recession cannot be predicted - it is matter of when, not if, in a growth oriented system - it is just many humans benefit from denial
> @Rao, good points all. However, the models are only as good as the > built-in assumptions...e.g. one of the recession triggers was that the > 'wunderkind' quants on the Street assumed a 6-8% annual increase in > housing prices, FOREVER, when they built their CDS models and sold the > resultant product to unwitting buyers.
-- Konstantin Ignatyev
PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000
Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206)
> Only half of human brain is sequential, the other is parallel.
> It is important that they work in tandem to maintain the life balance.
> Here's some video explaining one reference implementation of parallelism in
> human brain :)http://www.youtube.com/watch?v=UyyjU8fzEYU
> On Mon, Nov 9, 2009 at 12:01 AM, Rao Dronamraju <
> > Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> > to Cloud. We have had SMP since the early 90's with few apps (or even
> > Operating Systems) taking full advantage. This is a not a new issue, but an
> > old one. Software not keeping up with hardware. Tweaking compilers is not
> > the answer. Perhaps re-vamping our Education system is.
> > On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> > aespin...@structum.com.mx> wrote:
> > Greg,
> > I agree with you. Multicore has to be accounted in the clouds. Azure and
> > Google Apps Engine will have to support multithreaded code on
> > multiprocessors.
> > Creating threads on the cloud not only should be available but it should
> > scale to the number of cores you require. The technology in PaaS will have
> > to evolve to really simulate a single computer with cores-on-demand when it
> > executes code, using the cloud fabric. If I want to create a thread, I
> > should be able to do it, and then when a thread executes it should do so in
> > a single core, thus creating real parallelism.
> > PaaS has to support real parallelism either as threads or as tasks. There
> > are several ways to accomplish this, using simple Agents and Tasks
> > architecture. Obviously implementing such fabric is not as simple. Right now
> > when you create a service or a worker in Azure it runs on one machine, and
> > it scales by installing on different VMs using the cloud fabric. So it is
> > using Parallelism but not multicore.
> > I think PaaS will, like the article suggests, move up the ladder technology
> > wise, and it will provide multicore deveolpment in the end.
> > Regards,
> > Alex.
> > On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
> > wrote:
> > ...which is the subject of a post on "Perils of Parallel."
> >http://bit.ly/Gys2Y
> > Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> > yes. PaaS, no, but that's because the dominant platform paradigm
> > doesn't do multicore much.
Yes, that's the system I was referring to in my blog.
I didn't say more about it because I've not gotten into any of the
details of how reasonable a programming platform it is. I've heard
others say it's not good, but don't know enough to say myself. For my
purposes in the blog it's just a marker on the map saying we're moving
into regions where there be dragons.
And by the way, statements like those below indicating no bus = allows
100-way cache coherence are the product of a marketing writer who is
struggling to understand what the engineers are really saying.
> For the experts among you on this topic.... is this a viable alternative?
> Roundup: Tilera Debuts 100-Core
> Processors<http://www.datacenterknowledge.com/archives/2009/10/26/roundup-tilera...>The
> company claims its approach has simplified programming for multi-core
> processors, which has been cited by
> analysts<http://www.datacenterknowledge.com/archives/2008/02/21/multi-core-add...>as
> a barrier to adoption of many-core parallel processing. Tilera says
> its
> two-dimensional iMesh interconnect “*eliminates the need for an on-chip bus
> and its Dynamic Distributed Cache (DDC) system allows each cores’ local
> cache to be shared coherently across the entire chip*. These two key
> technologies enable the TILE Architecture performance to scale linearly with
> the number of cores on the chip.
> -RD
> On Sun, Nov 8, 2009 at 7:35 PM, Jan Klincewicz <jan.klincew...@gmail.com>wrote:
> > Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> > to Cloud. We have had SMP since the early 90's with few apps (or even
> > Operating Systems) taking full advantage. This is a not a new issue, but an
> > old one. Software not keeping up with hardware. Tweaking compilers is not
> > the answer. Perhaps re-vamping our Education system is.
> > On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> > aespin...@structum.com.mx> wrote:
> >> Greg,
> >> I agree with you. Multicore has to be accounted in the clouds. Azure and
> >> Google Apps Engine will have to support multithreaded code on
> >> multiprocessors.
> >> Creating threads on the cloud not only should be available but it should
> >> scale to the number of cores you require. The technology in PaaS will have
> >> to evolve to really simulate a single computer with cores-on-demand when it
> >> executes code, using the cloud fabric. If I want to create a thread, I
> >> should be able to do it, and then when a thread executes it should do so in
> >> a single core, thus creating real parallelism.
> >> PaaS has to support real parallelism either as threads or as tasks. There
> >> are several ways to accomplish this, using simple Agents and Tasks
> >> architecture. Obviously implementing such fabric is not as simple. Right now
> >> when you create a service or a worker in Azure it runs on one machine, and
> >> it scales by installing on different VMs using the cloud fabric. So it is
> >> using Parallelism but not multicore.
> >> I think PaaS will, like the article suggests, move up the ladder
> >> technology wise, and it will provide multicore deveolpment in the end.
> >> Regards,
> >> Alex.
> >> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>wrote:
> >>> ...which is the subject of a post on "Perils of Parallel."
> >>>http://bit.ly/Gys2Y
> >>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> >>> yes. PaaS, no, but that's because the dominant platform paradigm
> >>> doesn't do multicore much.
Shouldn't the software development paradigm be one that adapts?
A great example is the the implementation by Aha! Software of the
Monte Carlo simulation on AWS. They used a data services development
environment called Pervasive DataCloud that provided highly parallel
self adapting software execution. A library for Java Pervasive
developed for data intensive applications called DataRush. Can be
deployed on any cloud, they just happened to use AWS, but it takes
advantage of the underlying cloud resources, detecting the cores
available... the simulation takes hours to run on a dual core, takes 3
minutes on the extra large Amazon...same code!!!
> Only half of human brain is sequential, the other is parallel.
> It is important that they work in tandem to maintain the life balance.
> Here's some video explaining one reference implementation of parallelism in
> human brain :)http://www.youtube.com/watch?v=UyyjU8fzEYU
> On Mon, Nov 9, 2009 at 12:01 AM, Rao Dronamraju <
> > Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> > to Cloud. We have had SMP since the early 90's with few apps (or even
> > Operating Systems) taking full advantage. This is a not a new issue, but an
> > old one. Software not keeping up with hardware. Tweaking compilers is not
> > the answer. Perhaps re-vamping our Education system is.
> > On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> > aespin...@structum.com.mx> wrote:
> > Greg,
> > I agree with you. Multicore has to be accounted in the clouds. Azure and
> > Google Apps Engine will have to support multithreaded code on
> > multiprocessors.
> > Creating threads on the cloud not only should be available but it should
> > scale to the number of cores you require. The technology in PaaS will have
> > to evolve to really simulate a single computer with cores-on-demand when it
> > executes code, using the cloud fabric. If I want to create a thread, I
> > should be able to do it, and then when a thread executes it should do so in
> > a single core, thus creating real parallelism.
> > PaaS has to support real parallelism either as threads or as tasks. There
> > are several ways to accomplish this, using simple Agents and Tasks
> > architecture. Obviously implementing such fabric is not as simple. Right now
> > when you create a service or a worker in Azure it runs on one machine, and
> > it scales by installing on different VMs using the cloud fabric. So it is
> > using Parallelism but not multicore.
> > I think PaaS will, like the article suggests, move up the ladder technology
> > wise, and it will provide multicore deveolpment in the end.
> > Regards,
> > Alex.
> > On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
> > wrote:
> > ...which is the subject of a post on "Perils of Parallel."
> >http://bit.ly/Gys2Y
> > Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> > yes. PaaS, no, but that's because the dominant platform paradigm
> > doesn't do multicore much.
On Nov 8, 9:29 pm, "Rao Dronamraju" <rao.dronamr...@sbcglobal.net>
wrote:
Thanks for the comments, Rao. Before sending this, I realized what's
below sounds somewhat negative -- I don't mean it to be; you made good
comments, and I appreciate them. They're just tempting targets for me.
> Multi-cores in particular and massive parallelism in general is definitely going to be the future. Clouds are going to be platforms for real-time deep analytics and consequently a high degree of intelligence "juicer" (for the lack of better word).
Well, maybe. I recently got my ears bent by some guys at Pervasive
about their Datarush product, which beats the pands off clusters
(clouds) for data mining, running just on a single multicore. The key
is that the processing involved can get turned into streaming
operations: Off disk, into memory, into the processors, crunch on the
way through, back to memory and out.
Sure, they could do even better streaming in parallel on multiple
machines in a cluster -- but that, I think, is going to be the easy
part (they haven't done it yet).
> In ML, AI and Analytics, a lot information is approximated or inferred based
> on processing of sample set of data. With multi-cores a LOT more
> information/data can be analyzed in real-time and your probablistic models
> will be much more accurate.
Yup, that's what I referred to above.
> Imagine, no one could predict the "greatest recession in 60 years" despite
> all the economic metric models and the mega super computing power available
> today. Many Clouds size intelligence is needed to thwart this kind of fiasco
> next time around.
As Bob pointed out below, yes -- if we manage to have the right
models. Got to start by getting rid of silliness like assuming
exponential growth forever, as in Bob's example. I've run into that
same assumption in other settings, like: Back in the 90s, more than
one phone company was assuming exponential growth in cell phone sales,
forever. I remember questioning it in a customer briefing, and they
looked at me like I had two heads.
> So yes, multi-cores and Cloud/massive parallelism is the foundation for the
> era of super intelligent machines that will pervade us in the next 20 to 50
> years.
Ooyeee... you goin' Singularity on me, mon? :-) Please don't do that.
I'll believe in super intelligent machines as soon as anybody figures
out what "intelligent" is in the first place. (I believe some of the
adherents don't think that step is necessary, though.)
> [mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
> Sent: Sunday, November 08, 2009 8:10 PM
> To: Cloud Computing
> Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
> ...which is the subject of a post on "Perils of Parallel."http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
<< I have been working in obscurity with Multi processors since 1998 and
people are still having problems understanding asynchrouns programming.>>
I think there are about 20K people on this group so you are no longer in
obscurity
<The fact that the material available is too focused on Math, might be a
turn down for most of the developers, especially enterprise developers.??
I flunked Algebra I about three times (but if it's any excuse, it WAS in the
mid-seventies.) I fell in love with Boolean logicmy first year in
University (in PHILOSOPHY class of all places ... leave it to the Jesuits
..) Anyway, I was considered a fair programmer in my day (if you consider
dBase / Clipper programming.)
I think the whole outsourcing things has scared a lot of intelligent people
away from pursuing programming as a vocation. I hear varying opinions, but
I think IT as a whole is less attractive to perspective students than in
times past.
When I examine my career path, it's hard not to think I should have managed
a Hedge Fund .....
On Mon, Nov 9, 2009 at 11:45 AM, Alejandro Espinoza <
> I agree. This is not new. I have been working in obscurity with Multi
> processors since 1998 and people are still having problems understanding
> asynchrouns programming. I do think that with AJAX, some of it might have
> filtered the cracks of the developer's minds, but not all.
> I do believe that this is a problem of education. It is very important to
> teach sequential programming and combine it with a good methodology for
> parallelizing sequential code. I think the book "The Art of Concurrency" by
> Clay Breshears approaches programmers with the focus on improving sequential
> code.
> If you go to Amazon right now, and look for Concurrency or Parallelism
> books on Multiprocessors, most of them are very much filled with Math. Which
> actually scares most of the developers. I think that is why some developers
> haven't really approached working with Multiprocessors.
> The fact that the material available is too focused on Math, might be a
> turn down for most of the developers, especially enterprise developers.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 7:35 PM, Jan Klincewicz <jan.klincew...@gmail.com>wrote:
>> Recognizing multi-thread / multi-core / multi-CPU is not a new issue
>> unique to Cloud. We have had SMP since the early 90's with few apps (or
>> even Operating Systems) taking full advantage. This is a not a new issue,
>> but an old one. Software not keeping up with hardware. Tweaking compilers
>> is not the answer. Perhaps re-vamping our Education system is.
>> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
>> aespin...@structum.com.mx> wrote:
>>> Greg,
>>> I agree with you. Multicore has to be accounted in the clouds. Azure and
>>> Google Apps Engine will have to support multithreaded code on
>>> multiprocessors.
>>> Creating threads on the cloud not only should be available but it should
>>> scale to the number of cores you require. The technology in PaaS will have
>>> to evolve to really simulate a single computer with cores-on-demand when it
>>> executes code, using the cloud fabric. If I want to create a thread, I
>>> should be able to do it, and then when a thread executes it should do so in
>>> a single core, thus creating real parallelism.
>>> PaaS has to support real parallelism either as threads or as tasks. There
>>> are several ways to accomplish this, using simple Agents and Tasks
>>> architecture. Obviously implementing such fabric is not as simple. Right now
>>> when you create a service or a worker in Azure it runs on one machine, and
>>> it scales by installing on different VMs using the cloud fabric. So it is
>>> using Parallelism but not multicore.
>>> I think PaaS will, like the article suggests, move up the ladder
>>> technology wise, and it will provide multicore deveolpment in the end.
>>> Regards,
>>> Alex.
>>> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>wrote:
>>>> ...which is the subject of a post on "Perils of Parallel."
>>>> http://bit.ly/Gys2Y
>>>> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
>>>> yes. PaaS, no, but that's because the dominant platform paradigm
>>>> doesn't do multicore much.
On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
"Now I do handle multi-tasking pretty well. I am working on three project at
the same time. People might argue that I am doing a round robin kind of
thing. It might be true. But with the help of the computer I can compile one
application, test another while I am writing a post to this forum. That
amounts to three tasks in parallel."
I used the wrong word..I should have said parallel/concurrent not
multi-tasking. What you are doing is sequential "I can compile one
application, test another while I am writing a post to this forum" just as
you wrote it, not parallel.
Parallel is when you can do the following at the same time
1234567 X 1234567
7899665 X 7655433
5677889 X 9900654
Remember the key word is SAME TIME. If you have completed the first
multiplication at say 8:30:55 pm, you should complete the other two also
8:30:55. Now try it!.
Actually human beings do parallel processing in some respects. For instance
most visual information processing, for instance what you see in front of
you the 3-dimesional space, is processed
in parallel by your brain. But most tasks involving "analytical" work is
processes by brain sequential. Infact I think even the 3-dimesinonal visual
information that the brain is processing is being PERCEIVED in parallel but
PROCESSED/COGNITION sequentially. The only difference is it is happening at
such nano-second speeds that it appears as if parallel.
Human mind/brain can perceive only objects. It cannot perceive processes.
The world (and may be the universe) consists of only one PERCEIVABLE entity
- objects. Although a process (the other entity of the world) cannot be
perceived by human beings, it can be COGNIZED/understood. So objects in the
world are perceived in parallel but the semantics associated with objects,
the relationships between objects and also processes, is understood
sequentially. So human brain hits the breaks (in parallel processing) as
soon it needs to process the relationships and semantics between the objects
of the world and needs to get sequential. I am not sure whether this
limitation is at the biological level or at the behavior (learning) level.
_____
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Alejandro Espinoza
Sent: Monday, November 09, 2009 10:54 AM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
Rao,
"How many human beings can handle multi-tasking?...Human beings/brains are
sequential entities, hence the problem. "
You are right. Not many human beings can handle multi-tasking. also no many
human beings can handle a multiplication of 5642392 by 42325 without help.
I think we need to start teaching about multi-tasking and parallelism to
future generations. It is a problem of education. Just because we can't do
it now, doesn't mean we are never going to make it.
Now I do handle multi-tasking pretty well. I am working on three project at
the same time. People might argue that I am doing a round robin kind of
thing. It might be true. But with the help of the computer I can compile one
application, test another while I am writing a post to this forum. That
amounts to three tasks in parallel.
Now what I do might not be of help to everyone, and not every task can be
parallelized. But that means as human beings, we are capable of thinking
about parallel tasks, with the help of the computer or 'tools', but that is
exactly what parallelism is all about: Getting help. And we can learn to
think on structuring problems in a set of concurrent tasks so that we can
get help either in a form of a computer or tool, or just another human
being.
"Tweaking compilers is not the answer. Perhaps re-vamping our Education
system is. "
How many human beings can handle multi-tasking?...Human beings/brains are
sequential entities, hence the problem.
_____
From: cloud-computing@googlegroups.com
[mailto:cloud-computing@googlegroups.com] On Behalf Of Jan Klincewicz
Sent: Sunday, November 08, 2009 9:36 PM
To: cloud-computing@googlegroups.com
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
to Cloud. We have had SMP since the early 90's with few apps (or even
Operating Systems) taking full advantage. This is a not a new issue, but an
old one. Software not keeping up with hardware. Tweaking compilers is not
the answer. Perhaps re-vamping our Education system is.
On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza
I agree with you. Multicore has to be accounted in the clouds. Azure and
Google Apps Engine will have to support multithreaded code on
multiprocessors.
Creating threads on the cloud not only should be available but it should
scale to the number of cores you require. The technology in PaaS will have
to evolve to really simulate a single computer with cores-on-demand when it
executes code, using the cloud fabric. If I want to create a thread, I
should be able to do it, and then when a thread executes it should do so in
a single core, thus creating real parallelism.
PaaS has to support real parallelism either as threads or as tasks. There
are several ways to accomplish this, using simple Agents and Tasks
architecture. Obviously implementing such fabric is not as simple. Right now
when you create a service or a worker in Azure it runs on one machine, and
it scales by installing on different VMs using the cloud fabric. So it is
using Parallelism but not multicore.
I think PaaS will, like the article suggests, move up the ladder technology
wise, and it will provide multicore deveolpment in the end.
Regards,
Alex.
On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com> wrote:
...which is the subject of a post on "Perils of Parallel."
http://bit.ly/Gys2Y
Both are waves of the future. Do they get along? Net: Sort of. IaaS,
yes. PaaS, no, but that's because the dominant platform paradigm
doesn't do multicore much.
:I'll believe in super intelligent machines as soon as anybody figures out
what "intelligent" is in the first place."
OK, I will give it a try. I have actually two definitions for intelligence.
1) At the world (in which we live) level
2) At the universe level
First the #1, definition.
Intelligence is the ability to solve problems. Now problems that human
beings face are on a continuum from trivial like 2X2 to super human like the
ability to understand all the objects & events happening in the world and
the relationships between them, the problems and solutions to those
problems.
So if I develop machines that can do the latter, I have made machines that
transcend human intelligence limitations and move into super intelligent
machines. I think this is possible with large numbers of machines (how many
I do not know as this is theory at this time) working in parallel in
real-time and depends on how much of world's information they can handle and
how much intelligence can be derived from this processing.
I must also admit that in order for machines to go beyond human beings in
intelligence, they also need to learn the art of innovation/creativity. If
not they will be replicating the algorithms that human beings have made the
machines learn. By innovating and creating their own algorithms, the
machines will surpass human intelligence.
#2 definition
This is more at universal and meta-physical level.
Intelligence is the ability of an entity to understand the universe and
beyond. This can be a human being or a machine or a set of machines.
The biggest question here is, can you know the whole of something from
withiin something?...Can an entity that lives within the universe ever know
universe and beyond?...Another interesting aspect of this is, the very
concept of univers and beyond is LIMITED by your perception and cognition
abilities. What if there is something that is beyond the limitations of
human perception and cognition (including human imagination) because of
which it can NEVER EXIST in a human mind.
[mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
Sent: Monday, November 09, 2009 6:00 PM
To: Cloud Computing
Subject: [ Cloud Computing ] Re: Multicore vs. Cloud Computing
On Nov 8, 9:29 pm, "Rao Dronamraju" <rao.dronamr...@sbcglobal.net>
wrote:
Thanks for the comments, Rao. Before sending this, I realized what's
below sounds somewhat negative -- I don't mean it to be; you made good
comments, and I appreciate them. They're just tempting targets for me.
> Multi-cores in particular and massive parallelism in general is definitely
going to be the future. Clouds are going to be platforms for real-time deep
analytics and consequently a high degree of intelligence "juicer" (for the
lack of better word).
Well, maybe. I recently got my ears bent by some guys at Pervasive
about their Datarush product, which beats the pands off clusters
(clouds) for data mining, running just on a single multicore. The key
is that the processing involved can get turned into streaming
operations: Off disk, into memory, into the processors, crunch on the
way through, back to memory and out.
Sure, they could do even better streaming in parallel on multiple
machines in a cluster -- but that, I think, is going to be the easy
part (they haven't done it yet).
> In ML, AI and Analytics, a lot information is approximated or inferred
based
> on processing of sample set of data. With multi-cores a LOT more
> information/data can be analyzed in real-time and your probablistic models
> will be much more accurate.
Yup, that's what I referred to above.
> Imagine, no one could predict the "greatest recession in 60 years" despite
> all the economic metric models and the mega super computing power
available
> today. Many Clouds size intelligence is needed to thwart this kind of
fiasco
> next time around.
As Bob pointed out below, yes -- if we manage to have the right
models. Got to start by getting rid of silliness like assuming
exponential growth forever, as in Bob's example. I've run into that
same assumption in other settings, like: Back in the 90s, more than
one phone company was assuming exponential growth in cell phone sales,
forever. I remember questioning it in a customer briefing, and they
looked at me like I had two heads.
> So yes, multi-cores and Cloud/massive parallelism is the foundation for
the
> era of super intelligent machines that will pervade us in the next 20 to
50
> years.
Ooyeee... you goin' Singularity on me, mon? :-) Please don't do that.
I'll believe in super intelligent machines as soon as anybody figures
out what "intelligent" is in the first place. (I believe some of the
adherents don't think that step is necessary, though.)
> [mailto:cloud-computing@googlegroups.com] On Behalf Of Greg Pfister
> Sent: Sunday, November 08, 2009 8:10 PM
> To: Cloud Computing
> Subject: [ Cloud Computing ] Multicore vs. Cloud Computing
> ...which is the subject of a post on "Perils of
Parallel."http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.
Then I don't get your point. Because if I am a CPU there is no possible way
I can do things in parallel. But parallelism is not about one entity doing
two things at the same time. Is about getting help. That is the nature of
multiprocessors, and that was my whole point.
So if the computer is helping me do the three things at the same time, then
I am really doing things in parallel. If you test against the clock, I was
compiling and running tests while I was writing in this forum. If the three
of them are running at the same time, against the clock, then it is
parallelism. So it is possible.
The computer can help human beings accomplish parallel in some of the tasks.
Regards,
Alex.
On Mon, Nov 9, 2009 at 5:24 PM, Rao Dronamraju <rao.dronamr...@sbcglobal.net
> wrote:
> “Now I do handle multi-tasking pretty well. I am working on three project
> at the same time. People might argue that I am doing a round robin kind of
> thing. It might be true. But with the help of the computer I can compile one
> application, test another while I am writing a post to this forum. That
> amounts to three tasks in parallel.”
> I used the wrong word….I should have said parallel/concurrent not
> multi-tasking. What you are doing is sequential “I can compile one
> application, test another while I am writing a post to this forum” just as
> you wrote it, not parallel.
> Parallel is when you can do the following at the same time
> 1234567 X 1234567
> 7899665 X 7655433
> 5677889 X 9900654
> Remember the key word is SAME TIME. If you have completed the first
> multiplication at say 8:30:55 pm, you should complete the other two also
> 8:30:55. Now try it!.
> Actually human beings do parallel processing in some respects. For instance
> most visual information processing, for instance what you see in front of
> you the 3-dimesional space, is processed
> in parallel by your brain. But most tasks involving “analytical” work is
> processes by brain sequential. Infact I think even the 3-dimesinonal visual
> information that the brain is processing is being PERCEIVED in parallel but
> PROCESSED/COGNITION sequentially. The only difference is it is happening at
> such nano-second speeds that it appears as if parallel.
> Human mind/brain can perceive only objects. It cannot perceive processes.
> The world (and may be the universe) consists of only one PERCEIVABLE entity
> – objects. Although a process (the other entity of the world) cannot be
> perceived by human beings, it can be COGNIZED/understood. So objects in the
> world are perceived in parallel but the semantics associated with objects,
> the relationships between objects and also processes, is understood
> sequentially. So human brain hits the breaks (in parallel processing) as
> soon it needs to process the relationships and semantics between the objects
> of the world and needs to get sequential. I am not sure whether this
> limitation is at the biological level or at the behavior (learning) level.
> ------------------------------
> *From:* cloud-computing@googlegroups.com [mailto:
> cloud-computing@googlegroups.com] *On Behalf Of *Alejandro Espinoza
> *Sent:* Monday, November 09, 2009 10:54 AM
> "How many human beings can handle multi-tasking?...Human beings/brains are
> sequential entities, hence the problem. "
> You are right. Not many human beings can handle multi-tasking. also no
> many human beings can handle a multiplication of 5642392 by 42325 without
> help.
> I think we need to start teaching about multi-tasking and parallelism to
> future generations. It is a problem of education. Just because we can't do
> it now, doesn't mean we are never going to make it.
> Now I do handle multi-tasking pretty well. I am working on three project at
> the same time. People might argue that I am doing a round robin kind of
> thing. It might be true. But with the help of the computer I can compile one
> application, test another while I am writing a post to this forum. That
> amounts to three tasks in parallel.
> Now what I do might not be of help to everyone, and not every task can be
> parallelized. But that means as human beings, we are capable of thinking
> about parallel tasks, with the help of the computer or 'tools', but that is
> exactly what parallelism is all about: Getting help. And we can learn to
> think on structuring problems in a set of concurrent tasks so that we can
> get help either in a form of a computer or tool, or just another human
> being.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 9:01 PM, Rao Dronamraju <
> rao.dronamr...@sbcglobal.net> wrote:
> “Tweaking compilers is not the answer. Perhaps re-vamping our Education
> system is. “
> How many human beings can handle multi-tasking?...Human beings/brains are
> sequential entities, hence the problem.
> Recognizing multi-thread / multi-core / multi-CPU is not a new issue unique
> to Cloud. We have had SMP since the early 90's with few apps (or even
> Operating Systems) taking full advantage. This is a not a new issue, but an
> old one. Software not keeping up with hardware. Tweaking compilers is not
> the answer. Perhaps re-vamping our Education system is.
> On Sun, Nov 8, 2009 at 9:45 PM, Alejandro Espinoza <
> aespin...@structum.com.mx> wrote:
> Greg,
> I agree with you. Multicore has to be accounted in the clouds. Azure and
> Google Apps Engine will have to support multithreaded code on
> multiprocessors.
> Creating threads on the cloud not only should be available but it should
> scale to the number of cores you require. The technology in PaaS will have
> to evolve to really simulate a single computer with cores-on-demand when it
> executes code, using the cloud fabric. If I want to create a thread, I
> should be able to do it, and then when a thread executes it should do so in
> a single core, thus creating real parallelism.
> PaaS has to support real parallelism either as threads or as tasks. There
> are several ways to accomplish this, using simple Agents and Tasks
> architecture. Obviously implementing such fabric is not as simple. Right now
> when you create a service or a worker in Azure it runs on one machine, and
> it scales by installing on different VMs using the cloud fabric. So it is
> using Parallelism but not multicore.
> I think PaaS will, like the article suggests, move up the ladder technology
> wise, and it will provide multicore deveolpment in the end.
> Regards,
> Alex.
> On Sun, Nov 8, 2009 at 6:09 PM, Greg Pfister <greg.pfis...@gmail.com>
> wrote:
> ...which is the subject of a post on "Perils of Parallel."
> http://bit.ly/Gys2Y
> Both are waves of the future. Do they get along? Net: Sort of. IaaS,
> yes. PaaS, no, but that's because the dominant platform paradigm
> doesn't do multicore much.