Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming > #3902 > unrolled thread
| Started by | aminer <aminer@toto.net> |
|---|---|
| First post | 2013-10-10 13:08 -0700 |
| Last post | 2013-10-10 23:12 -0500 |
| Articles | 7 — 3 participants |
Back to article view | Back to comp.programming
About Amdahl's law 1 ... aminer <aminer@toto.net> - 2013-10-10 13:08 -0700
Re: About Amdahl's law 1 ... aminer <aminer@toto.net> - 2013-10-10 13:57 -0700
Re: About Amdahl's law 1 ... Ben Bacarisse <ben.usenet@bsb.me.uk> - 2013-10-10 19:14 +0100
Re: About Amdahl's law 1 ... aminer <aminer@toto.net> - 2013-10-10 14:45 -0700
Re: About Amdahl's law 1 ... Ben Bacarisse <ben.usenet@bsb.me.uk> - 2013-10-10 20:56 +0100
Re: About Amdahl's law 1 ... aminer <aminer@toto.net> - 2013-10-10 14:30 -0700
Re: About Amdahl's law 1 ... Robert Wessel <robertwessel2@yahoo.com> - 2013-10-10 23:12 -0500
| From | aminer <aminer@toto.net> |
|---|---|
| Date | 2013-10-10 13:08 -0700 |
| Subject | About Amdahl's law 1 ... |
| Message-ID | <l36mub$7to$1@news.albasani.net> |
Hello, But how can we use the Amdahl's law to predict scalability ? You can not use the Amdahl's to predict the exact scalability, i think , and i have explained it to you that the Amdahl's laws in parallel computing gives you the scalability in the worst case contention scenario , so the Amdahl's calculation in parallel computing looks like the calculation of the worst case complexity in computer science, so it can help to give the scalability of the worst case contention scenario, so that help also to predict worst case scalability, and if the serial part have not a constant running time and the parallel part have not a constant runnning time you can try to find and choose a maximum bound of the time to run the serial part and a maximum bound of the time to run the parallel part and do the Amdahl's calculation and this will give you the scalability for the worst case contention scenario, so the scalability will be equal or greater than the scalability that you will find with the Amdahl's equation. Thank you, Amine Moulay Ramdne.
[toc] | [next] | [standalone]
| From | aminer <aminer@toto.net> |
|---|---|
| Date | 2013-10-10 13:57 -0700 |
| Message-ID | <l36pr0$djo$1@news.albasani.net> |
| In reply to | #3902 |
But Amine, you have said that the Amdahl's law predict scalability of the worst case contention scenario , so the Amdahl's calculation in parallel computing looks like the calculation of the worst case complexity in computer science? That's right, cause what is, in your opinion , the purpose of the Amdahl's law if it's not to predict worst case scalability by calculating the maximum bound of time time inside the critical sections and the maximum bound of the time inside the parallel part and doing the Amdahl's calculation to predict the worst case contention scenario hence the worst case scalability, so i think this will predict that the scalability will be equal or greater to the result that we have found with the Amdahl's law. This is the purpose of Amdahl's law: it's also to predict the worst case scalability. Thank you, Amine Moulay Ramdane. On 10/10/2013 1:08 PM, aminer wrote: > > Hello, > > But how can we use the Amdahl's law to predict scalability ? > > You can not use the Amdahl's to predict the exact scalability, > i think , and i have explained it to you that the Amdahl's laws > in parallel computing gives you the scalability in the worst case > contention scenario , so the Amdahl's calculation in parallel computing > looks like the calculation of the worst case complexity in computer > science, so it can help to give the scalability > of the worst case contention scenario, so that help also > to predict worst case scalability, and if the serial part have not > a constant running time and the parallel part have not a constant > runnning time you can try to find and choose a maximum bound of > the time to run the serial part and a maximum bound of the time to run > the parallel part > and do the Amdahl's calculation and this will give you the scalability > for the worst case contention scenario, so the scalability will be equal > or greater than the scalability that you will find with the Amdahl's > equation. > > > > Thank you, > Amine Moulay Ramdne. > > >
[toc] | [prev] | [next] | [standalone]
| From | Ben Bacarisse <ben.usenet@bsb.me.uk> |
|---|---|
| Date | 2013-10-10 19:14 +0100 |
| Message-ID | <0.c17b192606e82c58f6a0.20131010191426BST.87vc150z99.fsf@bsb.me.uk> |
| In reply to | #3902 |
aminer <aminer@toto.net> writes: > But how can we use the Amdahl's law to predict scalability ? Not easily because optimum parallelism is hard to achieve and is highly dependent on the algorithm. > You can not use the Amdahl's to predict the exact scalability, > i think , and i have explained it to you that the Amdahl's laws > in parallel computing gives you the scalability in the worst case > contention scenario No, it's a best-case formula giving the optimal speed-up if nothing gets in the way (such as contention). <snip> -- Ben.
[toc] | [prev] | [next] | [standalone]
| From | aminer <aminer@toto.net> |
|---|---|
| Date | 2013-10-10 14:45 -0700 |
| Message-ID | <52571FFB.6070606@toto.net> |
| In reply to | #3904 |
On 10/10/2013 11:14 AM, Ben Bacarisse wrote: >> You can not use the Amdahl's to predict the exact scalability, >> >i think , and i have explained it to you that the Amdahl's laws >> >in parallel computing gives you the scalability in the worst case >> >contention scenario > No, it's a best-case formula giving the optimal speed-up if nothing gets > in the way (such as contention). You have not understood my ideas Mr. Ben Bacarisse, if you have the percentage of the serial part and percentage of the parallel part and you plug those datas into the Amdahl's law you will get the optimal/maximum speed-up, but i have noticed that you have not understood my ideas, the question is how to obtain the time inside the serial part and the time inside the parallel part? what i have tried to explain to you is that the purpose of the Amdahl's law is to predict to worst case scalability, and to do this prediction, you have just to find the maximum bound of the time inside the critical sections and the maximum of the time inside the parallel part and do your calculations to predict the worst case scalability, and of course you have to avoid the context switches by using the same number of threads than the number of cores and you have to lower cache-coherence traffic by using scalable Locks. Please reread what i have wrote and you will understand what i mean. Thank you, Amine Moulay Ramdane.
[toc] | [prev] | [next] | [standalone]
| From | Ben Bacarisse <ben.usenet@bsb.me.uk> |
|---|---|
| Date | 2013-10-10 20:56 +0100 |
| Message-ID | <0.67437960c75f9dd6ff2d.20131010205642BST.87eh7s2939.fsf@bsb.me.uk> |
| In reply to | #3906 |
aminer <aminer@toto.net> writes: > On 10/10/2013 11:14 AM, Ben Bacarisse wrote: >>> You can not use the Amdahl's to predict the exact scalability, >>> >i think , and i have explained it to you that the Amdahl's laws >>> >in parallel computing gives you the scalability in the worst case >>> >contention scenario >> No, it's a best-case formula giving the optimal speed-up if nothing gets >> in the way (such as contention). > > You have not understood my ideas Mr. Ben Bacarisse, if you have the > percentage > of the serial part and percentage of the parallel part and you plug those > datas into the Amdahl's law you will get the optimal/maximum speed-up, Yes, exactly what I said. > but i have noticed that you have not understood my ideas, the question > is how to obtain > the time inside the serial part and the time inside the parallel part? > what i have tried to explain to you is that the purpose of the Amdahl's law > is to predict to worst case scalability, No, it's purpose is as you (and I) describe it above -- to predict the best-case speed-up. Maybe you mean something peculiar by using the term "scalability" here. > and to do this prediction, > you have just to find the maximum bound of the time inside the critical > sections and the maximum of the time inside the parallel part and > do your calculations to predict the worst case scalability, and of course > you have to avoid the context switches by using the same number of > threads than the number > of cores and you have to lower cache-coherence traffic by using > scalable Locks. That's not what the law is about. You may be interested in critical sections, context switches and so on, but you will probably not get much help from Amdahl's law -- it abstracts all of those details out to give a best-case estimate of the speed-up, once you have the fraction of the single-core time that must remain serial. > Please reread what i have wrote and you will > understand what i mean. I don't think that will do it. [PS please don't use email for Usenet replies. Thank you.] -- Ben.
[toc] | [prev] | [next] | [standalone]
| From | aminer <aminer@toto.net> |
|---|---|
| Date | 2013-10-10 14:30 -0700 |
| Message-ID | <l36rp3$ho7$1@news.albasani.net> |
| In reply to | #3902 |
I have wrote: "But Amine, you have said that the Amdahl's law predict scalability of the worst case contention scenario , so the Amdahl's calculation in parallel computing looks like the calculation of the worst case complexity in computer science? That's right, cause what is, in your opinion , the purpose of the Amdahl's law if it's not to predict worst case scalability by calculating the maximum bound of time time inside the critical sections and the maximum bound of the time inside the parallel part and doing the Amdahl's calculation to predict the worst case contention scenario hence the worst case scalability? so i think this will predict that the scalability will be equal or greater to the result that we have found with the Amdahl's law. This is the purpose of Amdahl's law: it's also to predict the worst case scalability." To do a better scalability prediction, you have to use the same number of threads than the number of cores, and each thread must run a a separate core, to avoid context switches and you have to use Locks that lower better the cache-coherence traffic, such us the scalable Anderson Lock or the scalable MCS Lock or my scalable and distributed fair Lock, and try to find a maximum bound of the time inside your critical sections and maximum bound inside of the time inside the parallel part , and do the Amdahl's calculation with them to find the result of the worst case scalability, so the scalability will equal or be greater to this result. I think this is the purpose of the Amdahl's law: to predict the worst case scalability. Thank you, Amine Moulay Ramdne. On 10/10/2013 1:08 PM, aminer wrote: > > Hello, > > But how can we use the Amdahl's law to predict scalability ? > > You can not use the Amdahl's to predict the exact scalability, > i think , and i have explained it to you that the Amdahl's laws > in parallel computing gives you the scalability in the worst case > contention scenario , so the Amdahl's calculation in parallel computing > looks like the calculation of the worst case complexity in computer > science, so it can help to give the scalability > of the worst case contention scenario, so that help also > to predict worst case scalability, and if the serial part have not > a constant running time and the parallel part have not a constant > runnning time you can try to find and choose a maximum bound of > the time to run the serial part and a maximum bound of the time to run > the parallel part > and do the Amdahl's calculation and this will give you the scalability > for the worst case contention scenario, so the scalability will be equal > or greater than the scalability that you will find with the Amdahl's > equation. > > > > Thank you, > Amine Moulay Ramdne. > > >
[toc] | [prev] | [next] | [standalone]
| From | Robert Wessel <robertwessel2@yahoo.com> |
|---|---|
| Date | 2013-10-10 23:12 -0500 |
| Message-ID | <pute59tjd3vkp3c2i73cs2ga8p85e64835@4ax.com> |
| In reply to | #3905 |
On Thu, 10 Oct 2013 14:30:59 -0700, aminer <aminer@toto.net> wrote: > > >I have wrote: >"But Amine, you have said that the Amdahl's law predict scalability >of the worst case contention scenario , so the Amdahl's calculation in >parallel computing looks like the calculation of the worst case >complexity in computer science? > >That's right, cause what is, in your opinion , the purpose of the >Amdahl's law if it's not to predict worst case scalability by >calculating the maximum bound of time time inside the critical sections >and the maximum bound of the time inside the parallel part and doing the >Amdahl's calculation to predict the worst case contention scenario >hence the worst case scalability? so i think this will predict that the >scalability will be equal or greater to the result that we have >found with the Amdahl's law. This is the purpose of Amdahl's law: >it's also to predict the worst case scalability." > > >To do a better scalability prediction, you have to use the >same number of threads than the number of cores, and each >thread must run a a separate core, to avoid context switches >and you have to use Locks that lower better the cache-coherence traffic, >such us the scalable Anderson Lock or the scalable MCS Lock >or my scalable and distributed fair Lock, and try to find a maximum >bound of the time inside your critical sections and maximum bound >inside of the time inside the parallel part , and do the Amdahl's >calculation with them to find the result of the worst case scalability, >so the scalability will equal or be greater to this result. I think >this is the purpose of the Amdahl's law: to predict the worst case >scalability. Please don't top-post. As has been pointed out to you several times, Amdahl's law predicts the *best* possible speedup from parallelization. All those messy real world considerations, like contention for locks, will cause the *actual* speed up to be worse. The major point of Amdahl's law is to put a limit on the amount of useful parallelism in a workload. If 10% of your workload is serial, then you will never run faster than ten times the performance of a single core, no matter if you build a machine with ten processors or a million. Which does not apply to independent workloads running at the same time. Most compilers, for example, are fairly serial in nature - almost everything they do depends on the prior bits being done. So most compilers can make little use of more than one core. OTOH, a parallel make tool can certainly run several copies of the compiler, compiling different object modules, in parallel, greatly improving your build speeds. But in the latter case Amdahl's law still applies to the whole build system, and while the individual compiles parallelize well, the limiting serial components are often the analysis phase for the make tool and the link step, as well as the biggest single compile. And again, if you are building multiple executables, several independent link steps might parallelize as well.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.programming
csiph-web