Tuesday, November 20, 2012

speed up sparse eigen value computing

scipy, octave, R, matlab all call arpack backend.

I focus on scipy syntax here. Others should be similar.

If all the eigen values are non-negative, and smallest eigen values are desired. Use following code to speed up.

ev, ef = sparse.linalg.eigsh(A, k = 6, M, sigma=0.0, which = 'LM')


Here is the test result
>>> t = time.time();ev, ef = sparse.linalg.eigsh(W, 20, S, sigma=0.0, which = 'LM');print (time.time() - t)
0.0778040885925
>>> t = time.time();ev, ef = sparse.linalg.eigsh(W, 20, S, which = 'SM');print (time.time() - t)
0.231815099716
>>>
where W and M are 642 by 642 square matrices.

Customer covers Dell's failure

I purchased Dell xps L401x two years ago, in 2010. The laptop came with Nvidia optimus 420m. However, whenever I tried to load nvidia gpu, it went overheating in no more than 5 mins. The gpu just stopped working to protect itself from burnt. In these two years, I never used the nvidia graphics card.

Last week, I tried to do some internal cleaning and re-paste some high level thermal grease, as I heard these would help overheating problem. When I opened the heat sink, I was totally shocked. These is NO thermal grease on the nvidia clip. I attach the photo shot I took when I just removed the heat sink.
You can see that there are thermal grease on the intel cpu and the integrated gpu. Nvidia GPU is supper clean. Not a little grease on it. Originally, the GPU clip is directly attached to the heat sink. That is why the CPU went overheating so easily.

I re-pasted the CPU, added grease on GPU, then turned it back on. Problem solved. No more overheating. I loaded games, GPU computing. The temperature never went above 60C with GPU 100% loaded.

Dell sells defective products and lets customer fix it.

Friday, November 16, 2012

blender linux gpu

"CUDA device supported only with compute capability 1.3 or up, found 1.1"

I got this error, when I tried gpu rendering for cycles render. (I needed to check gpu on in the system setting first.) I was not sure how comes my 9800GT became an "old" device.

There is a way to walk around. In the render settings of cycles render. Choose experimental feature set, and GPU compute device. After a long time compiling, GPU works.

Wednesday, November 14, 2012

spyder and mayavi

It is not only about mayavi on spyder.

If u run mayavi via spyder, u might have "ValueError: API 'QString' has already been set to version 1". Spyder uses api 1 by default, while many other modules require api 2. U can can the console setting in spyder. Under the external modules. Change the api to api 2.

So far, it works fine for me.