> However, no matter how much I tried to push as much as possible down into the matrix libraries implemented in C/C++, the surrounding Python code slowed everything down. I was having trouble getting everything to finish in time to hand in my homework by the deadline.
Sorry, it's just been too long now to remember the details. I think it was the EM (expectation maximization) algorithm, though, which is hard to reduce entirely to matrix operations, at least for me it was.
Any good implementations for EM in Python (plus bridged libraries) out there?
Did you profile your code? What was the slow bit?