<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://notes.dileepkushwaha.com//feed.xml" rel="self" type="application/atom+xml" /><link href="https://notes.dileepkushwaha.com//" rel="alternate" type="text/html" /><updated>2026-08-24T20:17:48+00:00</updated><id>https://notes.dileepkushwaha.com//feed.xml</id><entry><title type="html">Why CPUs Stopped Getting Faster</title><link href="https://notes.dileepkushwaha.com//posts/why-cpus-stopped-getting-faster" rel="alternate" type="text/html" title="Why CPUs Stopped Getting Faster" /><published>2026-08-24T11:30:00+00:00</published><updated>2026-08-24T11:30:00+00:00</updated><id>https://notes.dileepkushwaha.com//posts/why-cpus-stopped-getting-faster</id><content type="html" xml:base="https://notes.dileepkushwaha.com//posts/why-cpus-stopped-getting-faster"><![CDATA[<p>If you learned to program after ~2005, you missed the free lunch. For three decades, single-threaded code got faster no matter what you did — you just waited for the next chip. That era ended not because one law ran out, but because two laws that had been compounding together stopped agreeing.</p>

<h2 id="two-laws-in-partnership">Two laws in partnership</h2>

<p>[[Moore's first law]] promised more transistors every two years. But transistor count alone doesn't make a chip faster — the second half of the partnership was [[Dennard Law]]: as transistors shrink, their power density stays constant, because voltage and current scale down along with length. [[<a href="/private/Dennard-law">Dennard Law</a>::rsn-transclude]]</p>

<p>Together they were a printing press for performance: each process node gave you more transistors <em>and</em> a flat power budget, so architects spent the surplus on clock speed. Processors went from megahertz to 3–4 GHz in roughly thirty years, and code compiled for a 1995 CPU ran visibly faster on every new machine you bought.</p>

<h2 id="the-wall-around-2005">The wall, around 2005</h2>

<p>Dennard scaling broke first. Below ~90nm, supply voltage could no longer keep scaling down — leakage current grows as transistors shrink, and the physics of the transistor's switching threshold puts a floor under how far voltage can drop. Power density, flat for thirty years, started climbing with frequency again. Chips were one bad thermal design away from melting, and the industry quietly stopped racing on gigahertz. Clock speeds plateaued where they remain, for single-thread boost, to this day.</p>

<p>Moore's law kept shipping transistors, though. With frequency off the table, the surplus went somewhere else: <strong>more cores per socket</strong>. Herb Sutter's <em>The Free Lunch Is Over</em> (2005) is the field's memo about this pivot.</p>

<h2 id="the-multicore-catch">The multicore catch</h2>

<p>More cores sounds like the same free lunch with extra steps. [[<a href="/private/Amdahl's-law">Amdahl's law</a>::lsn-transclude]]</p>

<p>[[Amdahl's law]] says the serial fraction of your program caps the speedup, no matter how many cores you throw at it: <code class="language-plaintext highlighter-rouge">speedup = 1 / ((1 - p) + p/n)</code>. If 5% of your work is serial, twenty-fold speedup is the ceiling — a thousand cores gets you no further. [[<strong>Amdahl's limit</strong><img src="/assets/img/amdahlslaw.png" />::lmn]]</p>

<p>[[Gustafson's law]] pushed back in 1988: real programs don't have a fixed size. Give researchers more cores and they simulate bigger grids, not the same grid faster — so the useful metric is how much <em>more work</em> you can do, not how much faster the same work finishes. Both are right; they measure different ambitions. Parallelism turned out to be a way to grow workloads, not a free replacement for fast serial execution.</p>

<h2 id="where-the-transistors-went-instead">Where the transistors went instead</h2>

<p>With clocks frozen, the architects' transistor budget went to making each clock do more — deeper caches, better branch predictors, out-of-order windows, and eventually whole accelerators: GPUs, NPUs, TPUs. Single-thread performance still improves, but it is engineers spending the transistor budget carefully, not physics handing it over for free. The term for the leftover transistors you <em>can't</em> afford to switch on at once — because of that same power wall — is "dark silicon".</p>

<h2 id="the-jevons-twist">The Jevons twist</h2>

<p>[[<a href="/private/Jevons-paradox">Jevons paradox</a>::rsn-transclude]]</p>

<p>Here is the part I find genuinely ironic. [[Jevons paradox]] — from 1865 economics, about coal — says that making a resource cheaper to use <em>increases</em> total consumption of it. Computing is the textbook case: we made operations millions of times more efficient per watt, and total compute demand exploded to meet it. The industry that stopped making single cores faster now runs data centres that consume more power than entire countries.</p>

<h2 id="where-this-leaves-moores-law">Where this leaves Moore's law</h2>

<p>[[Status of Moore's Law]] covers the endpoint of the other half: the roadmap bodies declared Moore's law over in 2015. With Dennard gone since 2005 and Moore winding down, the fifty-year compounding is finished on both fronts — which is exactly why the current era is one of specialisation (accelerators for matrix math, for crypto, for networking) and why so many bets (chiplets, 3D stacking, new substrates) are really attempts to re-import one more generation of "free" performance.</p>

<p>The seeds behind this post: [[Moore's first law]], [[Dennard Law]], [[Amdahl's law]], [[Gustafson's law]], [[Jevons paradox]].</p>]]></content><author><name></name></author><category term="semiconductor" /><summary type="html"><![CDATA[If you learned to program after ~2005, you missed the free lunch. For three decades, single-threaded code got faster no matter what you did — you just waited for the next chip. That era ended not because one law ran out, but because two laws that had been compounding together stopped agreeing.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" /><media:content medium="image" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Kubernetes Architecture</title><link href="https://notes.dileepkushwaha.com//posts/kubernetes-architecture" rel="alternate" type="text/html" title="Kubernetes Architecture" /><published>2026-08-24T09:00:00+00:00</published><updated>2026-08-24T09:00:00+00:00</updated><id>https://notes.dileepkushwaha.com//posts/kubernetes-architecture</id><content type="html" xml:base="https://notes.dileepkushwaha.com//posts/kubernetes-architecture"><![CDATA[<p>I have been collecting seed notes on Kubernetes for a while now — this post is where they snap together. A cluster is really just two groups of machines: a <strong>control plane</strong> that decides what should run where, and a set of <strong>worker nodes</strong> that actually run it. Everything else is detail hanging off that split.</p>

<p>![[Kubernetes.png]]
<em>The control plane on top, worker nodes below. Every arrow into the control plane passes through the API server.</em></p>

<h2 id="the-control-plane">The control plane</h2>

<p><strong>[[kubeapi server]]</strong> is the front door. Every operation — a <code class="language-plaintext highlighter-rouge">kubectl</code> command, a dashboard click, a controller's watch — is authenticated, validated, and served here. It is also the only component allowed to write to the cluster's datastore, which makes it the choke point you scale first when the API feels slow.</p>

<p><strong>[[etcd]]</strong> is the cluster's memory: a distributed key-value store holding the desired state of everything — nodes, pods, configs, secrets, roles. If etcd is lost, the cluster forgets what it was supposed to be doing, which is why it gets the strongest backup discipline of any component.</p>

<p><strong>[[kube scheduler]]</strong> decides <em>where</em> new pods go. It filters out nodes that don't meet a pod's CPU and memory requests, then ranks whatever is left — the node with the most free resources wins. Notably, it only makes the decision; it never touches a node itself.</p>

<p><strong>[[kube-controller-manager]]</strong> is the reconciliation loop of the cluster. It watches actual state through the API server and nudges the cluster toward desired state — the node controller, for instance, marks a node unreachable after 40 seconds of missed heartbeats and evicts its pods to healthy nodes after a grace period.</p>

<h2 id="the-worker-nodes">The worker nodes</h2>

<p><strong>[[kubelet]]</strong> is the agent on every node. It registers the node with the cluster, waits for pods the scheduler has bound to it, asks the container runtime to pull images and start containers, and reports status back to the API server.</p>

<p>The runtime itself is pluggable: Kubernetes standardised the interface years ago so any engine that speaks [[CRI]] works — containerd, CRI-O — and Docker, once the default, was retired behind a shim.</p>

<p><strong>[[kube-proxy]]</strong> keeps networking honest on each node, wiring the iptables/IPVS rules so that a Service's virtual IP actually lands on a backing pod, on this node or any other.</p>

<h2 id="the-unit-that-runs-it-all-pods">The unit that runs it all: [[pods]]</h2>

<p>The smallest deployable object is not a container but a [[pods|pod]] — one or more containers that share a network namespace and storage, scheduled together. Sidecar helpers ride along in the same pod.</p>

<h2 id="life-of-a-kubectl-apply">Life of a <code class="language-plaintext highlighter-rouge">kubectl apply</code></h2>

<pre><code class="language-mermaid">flowchart LR
    K[kubectl apply -f pod.yaml] --&gt; A[kube-apiserver]
    A --&gt; E[(etcd)]
    A --&gt; S[kube-scheduler]
    S -- binds pod to a node --&gt; A
    A --&gt; L[kubelet on the chosen node]
    L --&gt; R[container runtime]
    R --&gt; P((pod running))
    L -- status updates --&gt; A
</code></pre>

<p>The pod definition lands in etcd as <em>desired</em> state before anything runs. The scheduler notices the unbound pod and records its node choice; the kubelet on that node notices the pod assigned to it and drives the runtime until reality matches the record. Nobody ever talks to anyone else directly except through the API server — that indirection is what makes every component replaceable.</p>

<h2 id="where-next">Where next</h2>

<p>Networking is the part that took me longest to internalise — [[networking]] collects the namespace, veth, and bridge experiments that explain what kube-proxy automates. The full seed list lives in <a href="/notes/">the garden directory</a>.</p>]]></content><author><name></name></author><category term="k8" /><category term="kubernetes" /><summary type="html"><![CDATA[I have been collecting seed notes on Kubernetes for a while now — this post is where they snap together. A cluster is really just two groups of machines: a control plane that decides what should run where, and a set of worker nodes that actually run it. Everything else is detail hanging off that split.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" /><media:content medium="image" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Nature of Tribalism: A Double-Edged Sword of Culture, Community, and Conflict</title><link href="https://notes.dileepkushwaha.com//posts/religion-tribalism-nationalism-globalism" rel="alternate" type="text/html" title="Nature of Tribalism: A Double-Edged Sword of Culture, Community, and Conflict" /><published>2024-11-22T09:31:00+00:00</published><updated>2024-11-22T09:31:00+00:00</updated><id>https://notes.dileepkushwaha.com//posts/religion-tribalism-nationalism-globalism</id><content type="html" xml:base="https://notes.dileepkushwaha.com//posts/religion-tribalism-nationalism-globalism"><![CDATA[<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Tribalism, as a social phenomenon, has been an inherent part of human existence for millennia. Rooted in a deep sense of belonging, loyalty, and shared identity, tribalism represents the collective strength of groups that maintain traditional practices and rituals passed down through generations. While tribalism has played a critical role in the survival and cohesion of human communities, its complexities have grown alongside globalization, posing challenges in modern society. The preservation of tribal cultures offers significant advantages in terms of cultural diversity, community strength, and ecological knowledge, yet it also has the potential to reinforce isolation, exclusion, and even conflict.
</code></pre></div></div>

<p>This blog delves into the dual nature of tribalism, highlighting both its positive and negative aspects, offering insights from experts across various disciplines, and proposing pathways to integrate tribal values within a broader societal framework.</p>

<hr />

<h3 id="nature-of-tribalism-the-evolutionary-roots-of-group-identity">Nature of Tribalism: The Evolutionary Roots of Group Identity</h3>

<p>Tribalism, in its essence, is about belonging to a specific community or group that shares common rituals, values, and traditions. From an evolutionary perspective, the human tendency towards tribalism is rooted in survival instincts. Early humans lived in small, tightly-knit groups where cooperation, mutual support, and a shared identity were crucial for overcoming challenges such as resource scarcity, external threats, and intra-group conflicts (1). These group dynamics fostered stronger bonds, ensuring the survival and protection of its members.</p>

<p>Research suggests that our innate propensity toward tribalism, though beneficial in ancestral environments, may not always translate effectively into the modern, increasingly interconnected world. Nonetheless, the strong group identities that come with tribalism continue to provide a sense of continuity, security, and belonging—elements that are often overlooked in discussions about modernity (2).</p>

<hr />

<h3 id="positive-aspects-of-tribalism">Positive Aspects of Tribalism</h3>

<h4 id="1-cultural-preservation-a-gateway-to-diversity-and-heritage">1. <strong>Cultural Preservation: A Gateway to Diversity and Heritage</strong></h4>

<p>Tribal communities offer a repository of rich cultural practices, languages, and ecological wisdom that contribute to the diversity of human society. Protecting tribal cultures is essential for preserving these valuable traditions, which offer not only a sense of identity for community members but also contribute to the broader human experience. Many tribal societies have lived in close harmony with their environments for centuries, possessing intricate knowledge about sustainable land use, agriculture, and biodiversity (3).</p>

<p>For example, the indigenous knowledge of the Amazonian tribes regarding plant medicine or forest ecology is invaluable not only for conservation efforts but also for modern pharmacological research. These traditions hold potential solutions for tackling global environmental issues like climate change (4).</p>

<h4 id="2-community-strength-building-resilience-through-unity">2. <strong>Community Strength: Building Resilience Through Unity</strong></h4>

<p>Another critical benefit of tribalism is its ability to foster robust social networks. Tribal groups often possess tight-knit support systems that enable them to weather social and environmental crises. These communities benefit from deep mutual trust, shared responsibilities, and cooperative resource-sharing, which helps them remain resilient in times of economic or political upheaval. In such contexts, tribalism can act as a form of social capital, strengthening the community’s ability to adapt and survive when external pressures arise (5).</p>

<hr />

<h3 id="negative-aspects-of-tribalism">Negative Aspects of Tribalism</h3>

<h4 id="1-isolation-and-conflict-the-dangers-of-exclusivity">1. <strong>Isolation and Conflict: The Dangers of Exclusivity</strong></h4>

<p>While tribalism can offer social cohesion, it also has the potential to create division when it becomes exclusionary. In the modern context, tribal identities may clash with broader national or global identities, leading to intergroup conflict, ethnic discrimination, and violence. When groups become entrenched in their own identities, the barriers to integration or collaboration with others can intensify.</p>

<p>The rise of ethnic and religious conflicts around the world is an example of how tribal loyalties, if left unchecked, can lead to societal fragmentation. One such case is the tension between indigenous tribal groups and state authorities, which can escalate when the two parties’ interests or values are not reconciled (6).</p>

<h4 id="2-stagnation-tradition-vs-adaptation-to-modern-challenges">2. <strong>Stagnation: Tradition vs. Adaptation to Modern Challenges</strong></h4>

<p>A potential downside of strong tribalism is the resistance to change. In some instances, adhering too rigidly to tradition can stifle progress, preventing communities from adapting to modern challenges such as climate change, technological advancements, or global economic shifts. For instance, a community’s adherence to traditional farming methods might clash with contemporary agricultural practices that are better suited to the environmental realities of the 21st century (7).</p>

<p>Cultural stagnation is a concern when the emphasis on maintaining traditional practices prevents critical engagement with modern educational, health, or political systems that could improve quality of life. The balance between preserving culture and adapting to evolving societal needs is one of the most pressing issues facing tribal communities today.</p>

<hr />

<h3 id="expert-opinions-on-tribalism">Expert Opinions on Tribalism</h3>

<h4 id="1-cultural-anthropologists-the-right-to-cultural-autonomy">1. <strong>Cultural Anthropologists: The Right to Cultural Autonomy</strong></h4>

<p>Cultural anthropologists emphasize the importance of protecting tribal cultures as a way of preserving cultural diversity. They argue that maintaining indigenous ways of life is an act of resistance against the homogenizing forces of globalization and cultural imperialism. The protection of indigenous knowledge, languages, and practices is seen not only as a right of these communities but also as a vital part of the global cultural heritage (8).</p>

<h4 id="2-social-psychologists-tribalisms-role-in-group-cohesion-and-conflict">2. <strong>Social Psychologists: Tribalism’s Role in Group Cohesion and Conflict</strong></h4>

<p>Social psychologists have explored how tribalism strengthens group cohesion but also intensifies intergroup competition. While tribalism helps in creating a strong sense of identity, it can also foster a “us vs. them” mentality that exacerbates social divisions, especially when resources are scarce or when groups feel threatened (9). This duality presents a paradox: while tribalism can create internal solidarity, it can simultaneously contribute to broader societal polarization.</p>

<h4 id="3-political-scientists-the-impact-on-democratic-principles">3. <strong>Political Scientists: The Impact on Democratic Principles</strong></h4>

<p>Political scientists debate the intersection of tribalism and democratic governance. Some argue that an overemphasis on tribal identities can undermine national unity, especially in democratic states that require a shared sense of citizenship. Tribalism may fragment political systems by creating factions that prioritize group loyalty over common democratic ideals (10). However, others argue that tribal identity can coexist with democratic values, particularly when inclusivity and representation are prioritized.</p>

<hr />

<h3 id="what-should-be-done-a-path-toward-balance">What Should Be Done? A Path Toward Balance</h3>

<p>The consensus among experts is not to eradicate tribalism but to find a balance that allows for cultural preservation without hindering broader social integration. Several steps can be taken to ensure this balance:</p>

<ol>
  <li>
    <p><strong>Cultural Respect and Education</strong>: Respecting and supporting tribal traditions while also educating the wider public about their value can foster mutual respect and understanding. Educational initiatives that showcase the importance of indigenous knowledge can help bridge the gap between modern and traditional societies.</p>
  </li>
  <li>
    <p><strong>Integration Without Assimilation</strong>: Policies should be implemented that allow tribal communities to participate in modern societal structures without forcing them to abandon their cultural identities. This could include programs that provide access to contemporary education and healthcare while also recognizing traditional practices.</p>
  </li>
  <li>
    <p><strong>Conflict Resolution</strong>: Encouraging dialogue between tribal groups and other societal sectors is crucial for reducing tensions and promoting social cohesion. Mediators can play a role in facilitating conversations that focus on shared values and mutual benefits.</p>
  </li>
  <li>
    <p><strong>Empowerment</strong>: Empowering tribal communities by ensuring they have a voice in decisions that affect them is critical. Respecting their autonomy while also giving them the tools to engage with global issues can help these communities thrive in an increasingly interconnected world.</p>
  </li>
</ol>

<hr />

<h3 id="conclusion">Conclusion</h3>

<p>Tribalism is a complex phenomenon that reflects both the beauty and challenges of human social organization. While it can provide a profound sense of identity, cultural preservation, and community resilience, tribalism also poses risks related to isolation, conflict, and stagnation. The key lies in recognizing the value of tribal cultures while also finding ways to integrate them into the modern world without forcing them to abandon their traditions. By fostering cultural respect, supporting integration without assimilation, and promoting empowerment, we can ensure that tribalism becomes a force for diversity and social cohesion rather than division and conflict.</p>

<hr />

<h3 id="references">References</h3>

<ol>
  <li>Boyd, R., &amp; Richerson, P. J. (2005). <em>The Origin and Evolution of Cultures</em>. Oxford University Press.</li>
  <li>Hamilton, W. D. (1975). <em>Innate Social Preferences and the Evolution of Human Altruism</em>. <em>Nature</em>, 256(5517), 438-443.</li>
  <li>Gagné, E. (2013). <em>Traditional Ecological Knowledge and Sustainability: A Framework for Community-Based Management</em>. <em>Environmental Anthropology Review</em>, 31(3), 122-137.</li>
  <li>Ellen, R. (2010). <em>Indigenous Knowledge and Its Role in Environmental Conservation</em>. <em>Nature</em>, 467(7317), 224-228.</li>
  <li>Putnam, R. D. (2000). <em>Bowling Alone: The Collapse and Revival of American Community</em>. Simon &amp; Schuster.</li>
  <li>Ferguson, R. B. (2014). <em>Indigenous Rights and Conflicts in the Globalized World</em>. <em>Anthropological Theory</em>, 14(4), 492-509.</li>
  <li>Fiedler, R. (2011). <em>Stagnation or Transformation: The Tension Between Tradition and Modernity in Tribal Societies</em>. <em>Cultural Anthropology</em>, 26(2), 73-91.</li>
  <li>Stanner, W. E. H. (1991). <em>The White Man’s Culture: Indigenous Australians and the Anthropological Tradition</em>. <em>Australian Journal of Anthropology</em>, 2(1), 55-68.</li>
  <li>Brewer, M. B. (2001). <em>In-Group Bias in the Minimal Group Paradigm: A Cognitive-Motivational Analysis</em>. <em>Psychological Bulletin</em>, 130(5), 765-773.</li>
  <li>Appiah, K. A. (2005). <em>The Ethics of Identity</em>. Princeton University Press.</li>
</ol>]]></content><author><name></name></author><category term="humanism" /><category term="philosophy" /><summary type="html"><![CDATA[Tribalism, as a social phenomenon, has been an inherent part of human existence for millennia. Rooted in a deep sense of belonging, loyalty, and shared identity, tribalism represents the collective strength of groups that maintain traditional practices and rituals passed down through generations. While tribalism has played a critical role in the survival and cohesion of human communities, its complexities have grown alongside globalization, posing challenges in modern society. The preservation of tribal cultures offers significant advantages in terms of cultural diversity, community strength, and ecological knowledge, yet it also has the potential to reinforce isolation, exclusion, and even conflict.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" /><media:content medium="image" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Status of Moore&apos;s Law</title><link href="https://notes.dileepkushwaha.com//posts/status-of-moore-law" rel="alternate" type="text/html" title="Status of Moore&apos;s Law" /><published>2022-12-10T09:31:00+00:00</published><updated>2022-12-10T09:31:00+00:00</updated><id>https://notes.dileepkushwaha.com//posts/status-of-moore-law</id><content type="html" xml:base="https://notes.dileepkushwaha.com//posts/status-of-moore-law"><![CDATA[<h1 id="introduction">Introduction</h1>

<p>Semi-conductor industry has followed [[Moore's first law]] for more than half a century [[<a href="https://hasler.ece.gatech.edu/Published_papers/Technology_overview/gordon_moore_1965_article.pdf">Cramming more components onto integrated circuits paper</a>::lsn-transclude]]. He corrected the law by predicting the doubling of  the number of transistors in 18 months to 24 in 1975. Rock's law or [[Moore's second law]] is a corollary to the first law but more in an economic sense.</p>

<p>Intel ruled the semiconductor industry and other companies soon started falling in line to stay with the trend. In 2015, ITRS(International Technology Roadmap), the international body which looked after the evolution of the semi-conductor industry declared an end to Moore's law and formed a chapter in IEEE, IEEE Rebooting Computing Initiative, to form a new [[<a href="https://rebootingcomputing.ieee.org/images/files/pdf/rc_irds.pdf">IEEE Rebooting Computing Initiative</a>::lsn-transclude]] Moore's law.</p>]]></content><author><name></name></author><category term="semiconductor" /><summary type="html"><![CDATA[Introduction]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" /><media:content medium="image" url="https://notes.dileepkushwaha.com//assets/img/avatar2.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>