Some Assembly Required
*not the IKEA sort. Which is entirely unlike a bubble sort.
A new Javascript IPC library for KDB
So … at “$Work” I’ve been doing quite a bit with our Dashboard product that is being used more and more to report on different aspects of the desk’s trading activities and…
Oct 13, 2024
Filtering Tickerplant Log Files During Replay
I’ve written a new C library, which you can find in my Github KDB repository which does the same kind of thing as
-11!
, but allows you to provide a set of table names that…
Aug 24, 2024
Rewriting Tickerplant Logs On-The-Fly
We have an application at work that upon restarting intraday needs to replay the market-data tickerplant log file and subscribe to the live data feed. This, of course, takes…
Jul 20, 2024
Streaming KDB IPC Data
It used to be the case that we rewrote
c.java
to be more efficient. I haven’t downloaded it for ages, and have a feeling that it now uses primitive arrays under the covers…
Jun 9, 2024
Another vectorised bitwise-OR function for kdb+, AVX style
In my last post on a vectorised bitwise-OR function for kdb+, I wondered towards the end what the next interesting step would be — should it be the production of an…
Dec 12, 2012
A vectorised bitwise-OR function for kdb+
A long time ago I started writing some shared-library functions for kdb+ which would offer bitwise comparison of integer vector types using SSE vector registers. I came up…
Nov 21, 2012
Intel Performance Monitoring: Loose Ends
This post is part of the series on performance monitoring with Intel MSRs on Linux:
Nov 19, 2012
Scripting MSR Performance Tests With kdb+: Part 2
This post continues the series on performance monitoring with Intel MSRs on Linux using the batch-oriented kernel module to read and write values from and to the MSRs. The…
Nov 14, 2012
Scripting MSR Performance Tests with kdb+
This post is part of the series on performance monitoring with Intel MSRs on Linux:
Nov 13, 2012
Fun With MSRs: Counting Performance Events On Intel
This post is part of the series on performance monitoring with Intel MSRs on Linux:
Nov 11, 2012
Intel MSR Performance Monitoring Basics
This post is part of the series on performance monitoring with Intel MSRs on Linux:
Nov 9, 2012
A Linux Kernel Module For Reading/Writing MSRs
This post is part of the series on performance monitoring with Intel MSRs on Linux:
Nov 9, 2012
Interpreting readelf -r, in this case R_X86_64_PC32
Having just put the monster Relocations, Relocations blog-post to bed, at one point I caught myself trying to compute a relocation from the information given by
readelf -r
.…
Jun 30, 2012
Relocations, Relocations
The
man
entry for
elf
contains the following:
Jun 24, 2012
The Trouble With FSUB
It’s not often you get a really nasty surprise when writing software, and even less often that the nasty surprise is lurking in the compiler (or assembler). It turns out…
Mar 9, 2012
A Caesar Cypher? Using SIMD? Why?
There’s no easy answer to that. I had applied to join a group on some social networking site which was for assembly language programmers, and to check that I hadn’t got them…
Mar 1, 2012
AVX matrix-multiplication, or something like it
It’s been a while since the last post, and I can confidently say that I understand one or two percent of the new (well, new to me) world of AVX instructions. There was the…
Feb 17, 2012
Stack Alignment
The System V ABI “AMD64 Architecture Processor Supplement” stipulates that the stack should be aligned to a 16-byte boundary before calling a function. It provides the…
Feb 16, 2012
Bounded ranges, constrained or clamped values
So, given the ability to build a jump table for a range of inputs, it would be useful to transform a given input value onto one of the valid options for that table. If you…
Jan 17, 2012
Switch Blocks & Jump Tables
I didn’t know how jump tables were assembled prior to starting this investigation, and as anyone interested in assembly code will testify, using Google doesn’t really help…
Jan 17, 2012
Compare And Swap
Atomic instructions are used by the OS to provide higher-level concurrency constructs such as locks and semaphores. Probably the best known is the
cmpxchg
instruction, which…
Jan 17, 2012
The initial stack, reading process arguments (and environment variables)
I wrote a 32-bit assembly application a while ago which performed the simple task of printing out the program arguments and then the environment variables. Most people have…
Jan 17, 2012
Syntax Highlighting for Assembly Code
This is now completely irrelevant as I’m now running this website using Quarto, which is completely brilliant. I thought I’d leave this in the catalogue as it was my first…
Jan 17, 2012
Calling Java from assembler
Hi there,
Jan 17, 2012
Calling ASM functions from Java
If you’ve been inquisitive enough to read the “About” pages
1
you’ll see that my day job involves writing software in Java. To that end, I’ve put together some code which…
Jan 16, 2012
Hello, World!
Well, here it is, the ubiquitous “Hello, World!” example.
Jan 16, 2012
No matching items