Hello,
More about division of Labor and about quality and about productivity
and about specialization and more..
I am a white arab, and i think i am smart since i have also
invented many scalable algorithms and algorithms..
I have talked about division of Labor and about specialization, but
notice that when you become much older and you are not too specialized
and you accumulate much more deeper and much more general experience and knowledge and you become an architect or Chief Technology Officer or
such, it is also excellent, you can for example notice it by reading the following about Intel that is hiring and rehiring those types of
architects and veterans so that to be successful:
Shlomit Weiss returns to Intel as Head of Chip Development
Read more here:
https://translate.google.com/translate?hl=en&sl=auto&tl=en&u=https%3A%2F%2Fwww.developpez.com%2Factu%2F316610%2FShlomit-Weiss-revient-chez-Intel-au-poste-de-responsable-du-developpement-des-puces-un-nom-de-plus-dans-la-liste-des-veterans-qu-Intel-
continue-de-reembaucher%2F
And about division of Labor and productivity, read my following thoughts:
So i will ask a philosophical question:
How to manage efficiently complexity ?
I think you can manage complexity by the “divide and rule” approach
to management, which also leads to hierarchical division of large organisations, or wich also leads to the Division of "labour", you can
read more about the Division of labour here:
https://en.wikipedia.org/wiki/Division_of_labour
Also you can manage complexity by using constraints, such as laws, road
rules and commercial standards, all of which limit the potential for
harmful interactions to occur, also you can manage complexity by using
higher layers of abstraction such as in computer programming, and we can
also follow the efficient rule of: "Do less and do it better" that can
also use higher level layers of abstraction to enhance productivity and quality, this rule is good for productivity and quality, and about productivity: I have also just posted about the following thoughts from
the following PhD computer scientist:
https://lemire.me/blog/about-me/
Read more here his thoughts about productivity:
https://lemire.me/blog/2012/10/15/you-cannot-scale-creativity/
And i think he is making a mistake:
Since we have that Productivity = Output/Input
But better human training and/or better tools and/or better human
smartness and/or better human capacity can make the Parallel
productivity part much bigger that the Serial productivity part, so it
can scale much more (it is like Gustafson's Law).
And it looks like the following:
About parallelism and about Gustafson’s Law..
Gustafson’s Law:
• If you increase the amount of work done by each parallel
task then the serial component will not dominate
• Increase the problem size to maintain scaling
• Can do this by adding extra complexity or increasing the overall
problem size
Scaling is important, as the more a code scales the larger a machine it
can take advantage of:
• can consider weak and strong scaling
• in practice, overheads limit the scalability of real parallel programs
• Amdahl’s law models these in terms of serial and parallel fractions
• larger problems generally scale better: Gustafson’s law
Load balance is also a crucial factor.
So read my following thoughts about the Threadpool to notice that my
Threadpool that scales very well does Load balance well:
---
About the Threadpool..
I have just read the following:
Concurrency - Throttling Concurrency in the CLR 4.0 ThreadPool
https://docs.microsoft.com/en-us/archive/msdn-magazine/2010/september/concurrency-throttling-concurrency-in-the-clr-4-0-threadpool
But i think that both the methodologies from Microsoft of the Hill
Climbing and of the Control Theory using band pass filter or match
filter and discrete Fourier transform have a weakness, there weakness is
that they are "localized" optimization that maximize the throughput ,
so they are not fair, so i don't think i will implement them, so then
you can use my following invention of an efficient Threadpool engine
with priorities that scales very well (and you can use a second
Threadpool for IO etc.):
https://sites.google.com/site/scalable68/an-efficient-threadpool-engine-with-priorities-that-scales-very-well
And here is my other Threadpool engine with priorities:
https://sites.google.com/site/scalable68/threadpool