I recently came across a posted solutions to the 6s problem. I’m going to argue that several these solutions are invalid. Or, more precisely, I am going to argue that they are only conidered valid due to a convention in notation.
Continue readingAuthor Archives: Adam Young
Reading a log out of a docker file
I have to pull the log out of a docker process to figure out why it is crashing. The Docker container name is ironic_ipxe.
cat $( docker inspect ironic_ipxe | jq -r '.[] | .LogPath' ) |
Network traffic for an Ironic Node
I’ve set up a second cluster, and the Ironic nodes are not PXE booting. Specifically, if I watch the nodes boot via an IPMI serial-on-lan console, I see that they send out a DHCP request and never get a response back.
This is a problem I am familiar with from my days at Penguin. Time to dig in and understand the networking setup on the controller to see why it is not getting the packet. Or, possibly, why it is getting it and the response is getting dropped.
I have another cluster that is working properly, and I am going to look at the setup there to try and contrast it with the broken set up, and figure out my problem.
Continue readingNested Selection Criteria in jq
I’m working with API data from a netbox instance. I want to select a device-typ URL based on the manufacturer. However, the value “manufacturer” in the result is a dictionary. I want to select where that manufacturer has the name “Ampere” or some other manufacturer.
Continue readingHow Many registers?
AARCH64 has a lot of general purpose registers. How many? Lets see.
Continue readingMultiplication by Halving and Doubling in AARCH64 Assembly
While multiplication is defined in the context of repeated addition, implementing it that way algorithmically is not nearly as efficient as some other approaches. One algorithm for multiplication that is an order of magnitude faster is to halve one number while doubling the other. I gave myself the challenge of implementing this algorithm in AARCH64 Assembly, and it was not too hard.
Continue readingInsertion sort From Knuth to Gnu AARCH64
Now that I can run the Knuth version of the Insertion sort via MIXAL, I want to convert it to AARCH64 Assembly. What I am going to try to do here is a line by line translation. This is not necessarily how I would write the insertion sort in AARCH64 assembly, but rather a direct translation of the MIXAL version.
Continue readingUnderstanding the MIXAL insertion sort.
A debugger is a wonderful tool for understanding what actually happens in a piece of code. Donald Knuth’s coding in TAOCP is archaic enough that I do not understand it just by reading through. This is due to a combination of my unfamiliarity with MIXAL, as well as some of the coding conventions he’s chosen. So, I’m going to step through the MIXAL code in mixvm, and annotate what I find.
Continue readingRunning the MIXAL Insertion Sort
With the information gained in last posts investigations, I now know how to turn the smaple code of the insertion sort out of TAOCP into runnable code.
Continue readingMIXAL on Fedora
The examples in The Art of Computer Programming (TAOCP) are in the MIXAL programming language. In order to see these examples run, I want to install the tools on my Fedora box. They are packaged as RPMS, so this is trivial. Here are the steps to run and debug a sample program in MIXAL.
Continue reading