Computing Blog -- Complete Index and permanent links
This really is a blog: raw atom feed
Quantitative Analysis in Finance
C++ programming
- Non-dependent name lookup in C++
- Constrained Levenberg-Marquardt using the InMin library
- Constrained minimisation using the Levenberg-Marquardt algorithm
- C++ implementation of Khachiyan algorithm for the minimum enclosing (or covering) ellipsoid
- Making use of std::map<> ordered property: interpolation
- Lazy Code Generation (LzCG) and C++ Expression Templates
- A Simple, Minimal, Example of C++ Expression Templates
- Boost:
- Overcoming trouble with private implementation using smart pointers
- A potential pitfall when using boost::uniform_01
- Simple input parsing using Boost
- Common compile-time errors when using boost::bind
- More on generating normally distributed random numbers using boost (there is also a short article on this topic below)
- "Pointer Conflict" Errors in the Boost Serialization Library
- From BoostCon 2011 -- Bulk Synchronous Parallelism using Hybrid MPI+OpenMP
- From BoostCon 2011 -- The Geneva Optimisation library
- BoostCon 2011 Report
- Random Review series: randomly reviewing snippets of published codes:
- About the Random Review Series
- Small numerical values in C++
- Basic random number generation
- Basic generation of normally distributed random numbers
- Avoiding Artificial Class Hierarchies
- Avoiding Memory Allocation
- std::vector<> instead of new[]
- Generating random numbers in parallel for large-scale MC
- Derived classes still have a default assignment operator
- Template constructor in a non-template class
- C++ & SWIG: using data pointed to by a pointer
- Feature inheritance in SWIG -- doesn't apply to classes...
- SWIG wrappers in Java and the C++ RAII pattern
- SWIG %insert directive
- Using SWIG-ed libraries from Clojure
High-performance computing
- Finding Out and Visualising Hardware Locality
- How to monitor the full range of CPU performance events
- Using LD_LPRELOAD for testing of alternative implementations in large applications
- How to easily measure Floating Point Operations Per Second (FLOPS)
- Measuring Branch Prediction Accuracy Using Linux Perf Tools
OpenGamma
Python programming
- Running Python.
- Part I: Running Python from the command-line
- Part II: Running Python Programs from Emacs
- Python tips:
- Python/Excel Integration
- cx_Freeze
- Numba
- Using PyTorch from Microsoft Excel
- Is Python popular *because* it is slow?
- PyTorch .detach() method
- Fast Non-Linear Optimisation with PyTorch
Website/Company News and new projects
Web-publishing
- React, Bootstrap and and simple check-boxes
- How this website is made and re-made: link.
- Producing Atom feeds using Kid
- As an example of this, here is how to convert a directory of restructured text files to an Atom feed
- Comments are now enabled on this blog
General
- Another Employment Opportunity
- Employment opportunity
- Coccinelle
- Cross compiling Boost V1.50 from Ubuntu 12.04 to Windows
- Mixed static and shared linking of libraries
- Linux Perf tools
- The new "--as-needed" option to the GNU linker
- The LD_DEBUG environment variable
- Connecting Linux laptop to wireless Vodafone network via an E61
- Debugging a collision with a CPP macro name
- Unbound Variable errors in Bash scripts
- Python Global Interpreter Lock (GIL) + numerical data processing
- Quick-to-scale architecture for task-based processing
- Who's eaten up all the (inotify) watchers?
- Scalability Architecture of Apache Spark