Agner Fog

{{Short description|Danish computer scientist and antropologist}}

{{Infobox person/Wikidata | fetchwikidata=ALL}}

Agner Fog is a Danish evolutionary anthropologist and computer scientist. He is currently an associate professor of computer science at the Technical University of Denmark (DTU), and has been present at DTU since 1995. He is best known for coining the term "Regality Theory" and for writing extensive optimization manuals for machines running the x86 architecture.{{Cite web|url=https://www.dtu.dk/english/service/phonebook/person?id=78696&tab=2&qt=dtupublicationquery|title=Agner Fog|website=DTU|access-date=2019-05-03}}{{cite web |title=AMD Replaces Ryzen CPUs for Users Affected By Rare Linux Bug |url=https://www.extremetech.com/computing/254750-amd-replaces-ryzen-cpus-users-affected-rare-linux-bug |website=ExtremeTech}}

Social sciences

Agner Fog is the main investigator of Regality Theory, the proposition that the environment a group is in selects for certain psychological traits. As a result, a harsher environment selects for more regal (warlike) social structures while a safer environment selects for more kungic (peaceful) ones.{{Cite book|title=Warlike and Peaceful Societies : the Interaction of Genes and Culture.|others=Fog, Agner.|isbn=9781783744039|edition= 1|location=UK|oclc=1012158524}}

Programming and mathematics

= Optimization =

Agner Fog is known as a "CPU analyst" to tech websites covering x86 CPUs.{{cite web |last1=Gelas |first1=Johan De |title=the x86 instruction proprietary extensions: a waste of time, money and energy |url=https://www.anandtech.com/show/3593 |website=AnandTech}} He maintains a five-volume manual for optimizing code for x86 CPUs, with details on the instruction timing and other features of individual microarchitectures. He also maintains a Vector Class Library for SIMD math, an assembly subroutine library ("asmlib"), as well as many other utilities.{{cite web |title=Software optimization resources. C++ and assembly. Windows, Linux, BSD, Mac OS X |url=https://www.agner.org/optimize/ |website=Agner Fog}}

Agner Fog has also written extensively on the behavior of Intel C++ Compiler and Intel MKL on non-Intel CPUs, coining the term "cripple AMD" to describe the bias.{{cite web |title=Intel's "cripple AMD" function |url=https://www.agner.org/optimize/blog/read.php?i=49 |website=Agner`s CPU blog |date=2009}}

=Vector Class Library=

Agner Fog is the main author of the C++ Vector Class Library. This is an open source C++ class library for optimizing SIMD code.{{cite web |last1=Fog |first1=Agner |title=Vector Class Library |url=https://github.com/vectorclass/version2 |website=Github |access-date=4 July 2022}}

=ForwardCom instruction set=

Agner Fog has designed the ForwardCom instruction set. This is a high performance open source CPU Instruction set architecture with variable-length vector registers. The instruction set is neither RISC nor CISC, but a compromise with few instructions and many variants of each instruction.{{cite web |last1=Fog |first1=Agner |title=ForwardCom |url=https://www.forwardcom.info/ |website=ForwardCom.info |access-date=4 July 2022}}

= Other subjects =

Fog has written a few pseudorandom number generators with a variety of distributions, with a focus on performance (SIMD) and correctness with regard to floating-point behavior and statistical properties. These are used in simulations for his anthropology research.{{cite web |title=Pseudo random number generators |url=https://www.agner.org/random/ |website=www.agner.org}}

References