gsovereignty on Nostr: Amdhal's Law is how computer scientists calculate how much speedup you get when ...
Amdhal's Law is how computer scientists calculate how much speedup you get when adding additional CPU cores/threads/workers to a process.
It's a fairly simple formula. The more sequential operations you have, the less speedup you get by adding additional threads, because all of those threads need to pause execution and wait for the sequential parts of the process.
We call these sequential parts of the process by different names: a mutex, a lock, a synchronization point, etc. It's essentially any time that the parallel parts of a process need to wait for something else before they can continue.
You can calculate the speedup given by adding more workers to a process using Amdhal's law. At some ratio of seqential to parallel operations, there's no point adding any extra workers. For example if 50% of your process is sequential then you don't get any additional speedup by having more then 2 workers.
In human organizations, we have the same thing. Individuals within the organization are workers or threads. But they can't always work at the same time. They need to wait for other workers to finish, they need to have meetings, they need to wait for approval from people higher up in the organisation, etc. Human organizations have a ratio of sequential to parallel operations.
If you have a team size of 8, and you have 1 hour a day of meetings with the entire team, then adding a 9th person to the team will increase the cost of the team but will not result in any speedup or increased productivity.
Most organizations, e.g. Amazon, think that the problem is team size, saying things like "people work better in smaller teams". This is incorrect.
The limiting factor is nothing to do with human nature or how people work. The limiting factor is how many minutes a day the workers within an organisation need to spend waiting for some kind of agreement on what work to do (often via a stand-up meeting or something) .
It's a fairly simple formula. The more sequential operations you have, the less speedup you get by adding additional threads, because all of those threads need to pause execution and wait for the sequential parts of the process.
We call these sequential parts of the process by different names: a mutex, a lock, a synchronization point, etc. It's essentially any time that the parallel parts of a process need to wait for something else before they can continue.
You can calculate the speedup given by adding more workers to a process using Amdhal's law. At some ratio of seqential to parallel operations, there's no point adding any extra workers. For example if 50% of your process is sequential then you don't get any additional speedup by having more then 2 workers.
In human organizations, we have the same thing. Individuals within the organization are workers or threads. But they can't always work at the same time. They need to wait for other workers to finish, they need to have meetings, they need to wait for approval from people higher up in the organisation, etc. Human organizations have a ratio of sequential to parallel operations.
If you have a team size of 8, and you have 1 hour a day of meetings with the entire team, then adding a 9th person to the team will increase the cost of the team but will not result in any speedup or increased productivity.
Most organizations, e.g. Amazon, think that the problem is team size, saying things like "people work better in smaller teams". This is incorrect.
The limiting factor is nothing to do with human nature or how people work. The limiting factor is how many minutes a day the workers within an organisation need to spend waiting for some kind of agreement on what work to do (often via a stand-up meeting or something) .