Friday, November 05, 2010

Smart Almanac

My friend Elie has written this clever on line application. Check it out: Smart Almanac is the first astrological application which computes favorable time frames for actions you may have to perform in your daily life, this is the perfect astrological assistant to organize your schedule hourly.

Quickly get a 400+ pages analysis report that will tell you hourlywhen to act in your favor, when the planets do support your action, given your natal chart, and your current location on earth.
A large choice of questions among 9 themes is available.

Bring the results with you along the the day : with the iCalendar option, synchronize with your mobile phone !

Monday, August 02, 2010

Infosec Data Analytics and Visualisation

I gave this talk at the IISYG last Friday. It was well received thanks to the reading of Raffael Marty's excellent work and blogging on loggly.

It's a nice idea but the key to success is getting application developers to adopt the logging mechanism and for team leaders to understand transactions and enforce teams to use them. There were many questions, mainly about the security of sending your logs to a third party.

Thursday, April 01, 2010

Capability Operating Systems

This week Ben Laurie asks about capabilities in mainstream operating systems. Coincidentally, I was also tasked to investigate Mach Ports this week. According to the GNU Hurd wiki, "Mach Ports are Capabilities".

Okay, GNU Hurd is not exactly mainstream. But OS X is now installed in almost 11% of the computers in the US (arguably higher in more technical user populations). And Mach Ports are clearly part of OS X (including iPhone), but not widely used. Michael Weber points out that his IPC example code has found its way into the Chromium project. Maybe it's just a coincidence that Chrome was the only undefeated browser at the recent CanWest security conference in Vancouver last week.

So I am left to wonder what is the difference between these two concepts of capabilities, and what does Ben think OS X needs. Is it just a matter of making these services more visible?

Tuesday, January 20, 2009

Micro Trading Engines

In the search for low latency, the minimisation of hops or stack traversals is key. So here's a fairly obvious idea perhaps, but one I've yet to encounter in the real world.

If I were designing the pragmatic ideal trading engine, i.e. one which would be able to sit in a today's data center, I'd be looking an add in card-based solution with optical air inter-card interconnects - similar to the sli/crossfire approach taken to link multiple graphics card.

External interfaces would be fibre and multiple, 10GE capable at present rates so that I could accept multiple MPI IO streams for configurable bandwidth delivery.

Persistence would be staged from high speed ram through to SSD (or perhaps memristor when it hits main stream.)

Processing would be SoC with DSP, GPGPU, MMC CISC integrated with on chip with multi-gigabit optical quantum dot interconnects.

Ideally the server chassis holding the cards would be in an exchange-mart (sic) where multiple exchanges would co-locate - probably somewhere cold, geodesic with sustainable power (Iceland?)





Tuesday, July 08, 2008

Temporal News Signatures Used to Track Disease

Nice to see application of the techniques I described in my paper "Community-of-Interest Predicated Program Trading" used to track disease.

If they follow my logic, they'll use community expertise to do the analysis, annotation, recategorisation and dissemination to peer interest groups. Then it will be possible to build a reputation based analytics platform to summarise the trend, relate it to previous events and capture side-effects...

Tuesday, May 27, 2008

Open Source Intelligence in Finance



Presentation delivered to the FITE Club in 2005.

Business Driven Platform Architecture



Old presentation from 2005 where I attempted to introduce infrastructure people to the pressures the business were facing then as now...

Friday, May 23, 2008

Haskell, HPC and Crypto Get Together 22nd May 2008



Last night's get together was attended by about 15 men (women in technology take note) from a variety of backgrounds (students, cryptographers, investment bank staff.) Beers were consumed and nonsense talked - then we toddled off to Kurz and Lang for some bratwurst around eight as is our tradition (from our days in Zurich with a well known Swiss bank.)

The conclusion of the evening was that there is a place for Haskell in the city - why? Well here's two extracts from and article on Haskell and Performance on Planet Haskell written by Neil Mitchell:

Haskell's multi-threaded performance is amazing

A lot of clever people have done a lot of clever work on making multi-threaded programming in Haskell both simple and fast. While low-level speed matters for general programming, for multi-threaded programming there are lots of much higher-level performance considerations. Haskell supports better abstraction, and can better optimise at this level, outperforming C.

The trend is for higher-level optimisation

As time goes buy, higher-level programs keep getting faster and faster. The ByteString work allows programmers to write high-level programs that are competitive with C. Performance enhancements are being made to the compiler regularly, pointer tagging, constructor specialisation etc. are all helping to improve things. More long term projects such as Supero and NDP are showing some nice results. Optimisation is a difficult problem, but progress is being made, allowing programs to be written in a higher-level.

and that it would be a good idea to form a Functional Programming get together on a reasonably regular basis - so watch this space.

Wednesday, May 21, 2008

Financial Data Infrastructure with HDF5



Presentation given to the FITE Club in 2004.

Crisis Resilient Architecture



I gave this presentation at IISyG in 2005 to an audience of Infosec specialists. The talk was inspired by Dr Sally Leivesly of Newrisk Ltd who regularly appears on the BBC after terrorist incidents. She outlined combinatorial threat and area denial scenarios.

Another influence was the amount of fuel required to power centralised data centers which, in times of crisis, may be hard to supply regularly. Then there is the strange notion that staff will have the desire and ability to travel to some remote data center regularly which frankly beggars belief. The whole BCP/DR scenario is, sadly, driven by regulators, auditors and policy wonks.

So my take on the answer is that we need fabric/cloud computing, micro data centers and UWB MAN networks which can be up and running in an instant. Combined with the "crisis desktop", a bootable OS on a memory stick which can form a secure platform to access your virtual desktop. The parts are all there - all we need is the strategists to catch up...

Wednesday, May 14, 2008

RANT Talk - Object Orientated Security Policy

I'm speaking at RANT on Object Orientated Security Policy. This is a post implementation talk which will highlight the benefits of having a visual policy framework with executable procedures arranged in an inheritance hierarchy.

The event is being described as: "Graeme’s rant will be looking into how the Security policy landscape is changing and how policies can no longer afford to be a loose collection of word documents seldom referred to. He will talk about how it is the business logic and rules of the organisation which are now becoming executable thanks to web services."

Details can be found here


Monday, May 12, 2008

Information Security - Risk Management Process


Risk assessment is a mandatory activity under all the Information Security policy frameworks e.g. COBIT, ISO27001. However, risk assessment methodologies are point-in-time and don't deal with incremental risk as the above process does.

Haskell, HPC and Crypto - Beer in the Evening

We're organising another "beer in the evening" event somewhere round about Smithfield in London to discuss Haskell, multi-core, HPC, Security and all sorts really - so if you fancy having a beer or two with a gang of gnarly, middle-aged architects, programmers and scientists (attractive huh?) then you'll be very welcome.

We will be meeting on the 22nd May - details are here

To participate, please add your name to the Doodle Poll entitled Haskell + Beer. This is so we know how many buckets of chips to order...

As All Bar One has now closed, we will be in the Bishop's Finger, Smithfield. I'm planning on getting there around 530pm. My mobile number is zero seven eight three zero three six eight zero two four - when you get there give me a call. There's a good chance we'll get some of the beers paid for too but no promises yet.

Topics for discussion/contention
  • Crypto in Haskell (Dominic is Mr Haskell Crypto btw). Opportunities for parallelism (e.g.)
  • Is Haskell and multi-core the best solution to meet the projected demand for simulation in finance or has FPGA yet to have it's day?
  • Challenges of Haskell and high performance messaging integration. 2.4 million messages per second (not transactions) are now possible using tools like LBM from 29West.
  • The K language (an APL derivative), Fortran, Objective-C, LISP and Smalltalk gained a small foothold in the eighties/nineties in quantitative analytics but C++ remained the main language of implementation due to availability of skillset (K programmers are like hen's teeth.) Java and now C# are now the de facto implementation languages but have serious issues for high frequency finance - will Haskell be able to make an impact or will it be another marginal language used by quants.
  • Is Haskell capable of high performance?
  • Haskell and distributed memory (memcached) performance aspects
  • Haskell Data Parallelism versus state of the art FPGA approaches. Check out HPCPlatform's offering btw.
  • I hear rumours that Haskell is being rolled out to the HPC team of a major investment bank in Canary Wharf - watch this space...
More topics very welcome.



Sunday, May 11, 2008

Collaborative Web Services

Collaboration was a theme that underlay some of fundamental concepts behind the Trade Ideas platform from youDevise. This presentation highlights some of the many threads which prevailed at the time.

Open Source Intelligence in Finance

A presentation given in 2005 to the FITE Club. This was the foundations to my paper on Community-of-Interest predicated Program Trading which was presented at the Operational Research Society Conference, OR49 in September 2007.

HPC=Grid+Data+FPGA

Another presentation from the past. Presented at Platform's Grid conference in Paris in 2006.

Monte Carlo Using COTS FPGA

A few years ago I put together this presentation based on some work I did with some guys at Southampton University on embedding Monte Carlo onto FPGA. At the time we used System C and the C code from the Monte Carlo implementation in the SCIMARK 2.0 Benchmark, something I've used to great effect in the past. The implementation was niaive and simplistic but it was used to start the HPC movement that's been a la mode in the City for a while...


OpenTech 2008

OpenTech2008 is being held in London on the 5th July 2008. The conference is "an informal, low cost one-dayer on technology, society and low-carbon living, featuring Open Source ways of working and technologies that anyone can have a go at."

I've been invited onto the security panel by Ben Laurie of Google (Caja) and Apache SSL fame. I'm going to be talking about beancounter-led regulation in financial markets and how it has killed security engineering...

Thursday, May 08, 2008

CUDA - GPU Programming Framework from nVidia

Catching up with some reading this morning, I picked up a series of articles from the Mar/April edition of ACM Queue. In particular, CUDA which was released by Nvidia last year. I read the article "Scalable Parallel Programming with CUDA" which can be found here.

The article identifies three key abstractions, hierarchical thread groups, shared memories and barrier synchronisation. CUDA is based on C with extensions for parallelisation - much like Handel-C. The difference is that Handel-C was FPGA based whilst CUDA is for GPU with its built-in floating point capability. There are simple and straightforward code examples showing parallel threading and memory sharing which was always an issue in my mind with FPGA: the leap of faith with Handel-C was what to do with the data set you generated in a Monte Carlo simulation.

This question has been perplexing developers on the CUDA forums at Nvidia too - but it looks like there's been progress as outlined in this presentation on Monte Carlo Options Pricing paper on the Nvidia developer site. However, the algorithm outlined in the paper is trivial, the secret being the generation of quasi-random numbers enabling quick convergence. Then filtration close to the data so you're not schlepping large lumps of data unnecessarily.

Then the next logical step is to make this a service. The appetite is reckoned to be about 5 trillion simulations per day in the average organisation according to a quant chum of mine. Combine this with S3 for asynchronous storage and you have the makings of a nice little business I think.