Category Archives: Mathematics

Nvidias CUDA

Actually got around to looking a CUDA on Nvidia cards at work yesterday.

Got the SDK and sample code up and running on the mac pro, next thing to do is find some maths problem to do on it which will be faster than on a CPU / Grid. well at least that it will be faster given a better GPU the NVIDIA GT 120 isn’t that fast considering there is 2 Xenon quad core chips 2.4ghz. on the mac then there at 6 macs connected to the Xgrid. so it will be a bit hard to do a direct comparison.

Also had a informal meeting with the lab manager from physics we discussed how that for ever increasing amount of remote courses at the university how he plans to do physics labs for the astronomy course next year.

Ended up sending him to have a look at the UTS remote labs http://remotelabs.eng.uts.edu.au/ and told him to keep us posted since it’s all of interest.

So any ideas how to show that CUDA and GPU computing is useful ? or how to conduct an astronomy lab when your students are in Queensland ?

Installing AGVCRToMPEG2 on 9.04

AGVCRtoMPEG2 – is an old and outdated program that can convert your AGVCR recordings to avi or mp3.

README can be found at https://svn.ci.uchicago.edu/svn/if-media/AGVCRToMPEG2/README

Dependencies from apt repos:

  • Scons
  • Subversion
  • Build-essentials
  • libgsm
  • libsamplerate
  • libz

sudo apt-get install scons subversion build-essential libgsm1-dev libsamplerate-dev libz-dev

Download the code form the svn repository

svn co https://svn.ci.uchicago.edu/svn/if-media/AGVCRToMPEG2

We have to use the exact version of ffmpeg that he used in development since he has used superseeded functions from the ffmpeg libiary

svn co svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg -r 5652

Configure and Make ffmpeg (don’t install unless you want to)

cd ffmpeg

./configure

make

Next we have to edit the scons file in cd ~/AGVCRToMPEG2 , it is meant to take the command argument of where you complied the version of ffmpeg but it seems to use old and outdated scons code so we hard code the location in.

Using your favourite editor e.g vim SConstruct

On line 23:

ffmpeg_path = env[‘ffmpeg_path’]
#ffmpeg_path= /home/jack/D/project/ffmpeg

change to

#ffmpeg_path = env[‘ffmpeg_path’]
ffmpeg_path= ‘/home/carma/ffmpeg’

replace carma with your username

We can now attempt to compile the code with the the command scons. but your most likely to get errors due to poor C++ coding most are just related to messing #includes

The following files will need to be edited:

AGVCRToMPEG2.cpp
VPMedia/video/h261/VPMH261ASEncoder.cpp
VPMedia/video/h261/VPMH261Encoder-mash.cpp
VPMedia/video/VPMVideoBufferSink.cpp
VPMedia/video/VPMVideoAssembler.cpp
AudioMixer.cpp
VPMSSRCManager.cpp

To make things easier attached is the output of svn diff AGVCRTOMPEG2_904update.patch Note gunzip because of wordpress security doesn’t allow patch files.

gunzip AGVCRTOMPEG2_904update.patch.gz

now patch

patch -p0 < AGVCRTOMPEG2_904update.patch

Compile attempt 2

scons

Readme contains many examples and hopefully you now have a working system.

Access Grid and VNC abuse

Ok yesterday was the first day I worked as a Access grid support officer.

And as a whole the software is pretty cool.

3 Universities inside the country live video and audio the software reports back it’s moving data at about 1 Mb/s

My problem is how they use VNC….

Lecturer has a powerpoint presenation he wants to show the other end they log into a VNC server on the presenating computer.

1st problem differing resolutions at the other end. Our vnc server desktop is 4 screens long. so it’s got a combined resolution of roughly 1024 x 30724096×768. where the other end appeared to only have a single screen and that of only 1024×768. so the powerpoint presentation had to be windowed and shrunk so the didn’t exceed the display of the other ends.

2nd problem is that then the power point has animations. Now we have a pretty fast link at the university and so do the other universities. But VNC wasn’t designed to broadcast video, It sends still screen shots at a fast enough refresh rate that remote administration is doable most of the time. But here is a screen of size 1024x 3072 4096×768 and we are being asked why the image being received by the Unis in Melbourne and SA, doesn’t have smooth animations.

I understand why VNC is used it allows both ends to have control of the screen so other students in the topological groups course can actually write there questions on the electronic whiteboards (smart boards ) and the lecturer and other students can see them and edit the question and answer it. But oddly enough Microsoft had a solution to this years ago and that was Microsoft’s Netmeeting has a whiteboard application so multiple users can write on the same “whiteboard” space .. .now this was well before the smart boards came along.

looks like there is plenty of room to improve methods. And the challenge in this new job isn’t getting your room in order but if one of the other locations don’t have a techie on hand.

Also if you know any great applications for this sort of stuff leave a message.

Edit: got my resolution the wrong way 4 screens long so 4096×768 . Always get confused with the is it height then width or width then height.

New Job

This afternoon after an interview before Easter. I was offered the job of Access Grid Support Officer working for 17000 at the University of Newcastle.

It looks like it’s going to be a great part time job while I’m at Uni.

Basics of the Job is that I’ll be running and tech support for the Universities Teleconference suite. (or Access grid)  The University has 2 of these rooms both located at the top of the maths building. (one equipped with smart boards a the other a touch screen TV)

At the moment the only group using the room is the Maths department for topological groups and other distance education courses. But there are plans to open the rooms up to other departments as well as offering a commercial service to the public sector.

I’ve been told the software running the room is open source, which should be another plus.

Uni, new degree and blog fame.

Firstly I’ve had a hard time getting to the rhythm of uni life again. For those who care I’ve changed degrees. I decided to after spending a lot of time last year in the engineering building, it holds my interest more than maths I changed degrees this year from my B. Mathematics degree to a B. Engineering (computer) / B. Mathematics Combined. Of course this makes everything feel weird as I go from ELEC1700 first year subject to a 3rd year subject in programmable logic then number theory.

A lot of people had a good laugh at my last blog post actually it has been my most popular to date. I didn’t really mind people laughing since if I did I wouldn’t of blogged. I did get a couple strange comments though, a lot of if its a server config use a server.. someone said to use a Mac ?! and this guy from windows watch, miss labeled Mandriva as a live cd which it isn’t (sorta technically you can argue) and then segwayed into why having no screen or keyboard is good.

I don’t really see my computer as a serious server, yes it’s on 24/7, it is my personal SVN server but why spend a tonne of money I don’t have just so I can easier sync my uni work between my laptops and desktop, and have some revision control on the programs and latex files I write.

Just a note for me while I slowly re-build my computer. Some documentation that comes in handy.

I’ve also applied for a Job with 17000 to be the techincal help with the access grid room. It would be a nice job since it looks to require you to sit in the room during the access grid lectures, and work the equipment and according to my mates in the maths deparment the lectures can be pretty interesting. Haven’t heard back yet, and I’m not sure I will get it since I did direct them to this blog as a refrence and the last couple of posts don’t make me look smart…

Open Office Latex plugin

Most Mathematicians use Latex for their documents on the other hand most ‘normal’ people use some sort of word processor.

The Open Office Latex plugin is the compromise.

Basically the only reason you would use it over Latex is…..

You can share an open office file with your non Latex converted friends, you know those statistics students who are doing other degrees not maths and you are forced to do group work with them.

Other reasons yeah.. OOo has a spell checker … it’s easier to insert pictures.

Anyway installation: go grab the file from http://ooolatex.sourceforge.net/ save and download.

Install using the install extensions tool in open office. Installs just like a Firefox extension.

yeah next part is configuring it.

Open Office latex plugin

Frankly the instructions on the website where lacking at this part of the process.

I couldn’t find the config section because I didn’t notice the new bar underneath file.

And no suggestions where the binaries for Latex and ghostscript would be except for a mac screenshot. But since this is my ubuntu box it was easier solved with locate:

/usr/bin/

For both binaries.

Next thing was having a play.

Using the “equation” button, you are presented with a fairly confusing screen, working out things like when you select inline in the equation menu you don’t need to put in the $ $ and selecting emf as the output image format didn’t work so I used png, took some trial and error.

Basically the plug-in has no polish.. only experienced computer and latex users should give it a go.

Installing JMP on ubuntu

In order to do my stat2000 labs i need to use JMP, the university gives out copies of JMP out to students on some sort of site licences, the instructions where to go down to uprint and pick up a disk for a small fee ($5). I went down got my disk took it home, and too my disappointment it was only the windows version. JMP is multi-platform as shown by the System Requirements

A couple emails later to lecturers then he emailed desktop services, i got a email saying that they have a license file for me and a disk with the Linux installer.

Which brings the next problem the linux installer really is only a Red Hat installer. And my linux of choice is of course ubuntu.

gabriel@ubuntu1:/media/cdrom$ ls -la
total 506854
dr-xr-xr-x 10 root root 4096 2008-03-06 12:07 .
drwxr-xr-x 5 root root 4096 2008-03-13 16:57 ..
-r--r--r-- 1 root root 10 2008-03-06 12:07 cd.id
dr-xr-xr-x 2 root root 2048 2008-03-06 12:07 fonts
dr-xr-xr-x 2 root root 2048 2008-03-06 12:07 java
-r--r--r-- 1 root root 29142815 2007-09-29 04:46 jmp-base-al-7.0.1-1.i686.rpm
-r--r--r-- 1 root root 54675183 2007-09-29 04:46 jmp-lang-deDE-7.0.1-1.noarch.rpm
-r--r--r-- 1 root root 54591039 2007-09-29 04:46 jmp-lang-enUS-7.0.1-1.noarch.rpm
-r--r--r-- 1 root root 54693795 2007-09-29 04:46 jmp-lang-frFR-7.0.1-1.noarch.rpm
-r--r--r-- 1 root root 119767152 2007-09-29 04:47 jmp-lang-jaJP-7.0.1-4.noarch.rpm
-r--r--r-- 1 root root 92146971 2007-09-29 04:47 jmp-lang-koKR-7.0.1-3.noarch.rpm
-r--r--r-- 1 root root 106242682 2007-09-29 04:47 jmp-lang-zhCN-7.0.1-4.noarch.rpm
-r-xr-xr-x 1 root root 5241003 2007-09-29 04:48 jmp-setup
-r--r--r-- 1 root root 2477691 2007-09-29 04:48 jmp-setup-al-1.2-3.i686.rpm
dr-xr-xr-x 2 root root 2048 2008-03-06 12:07 media_data
dr-xr-xr-x 3 root root 2048 2008-03-06 12:07 order_data
dr-xr-xr-x 3 root root 2048 2008-03-06 12:07 product_data
-r--r--r-- 1 root root 11536 2007-09-29 04:45 ReadMe.html
dr-xr-xr-x 8 root root 2048 2008-03-06 12:07 Resources
dr-xr-xr-x 3 root root 2048 2008-03-06 12:07 tools
dr-xr-xr-x 2 root root 2048 2008-03-06 12:07 unixODBC

So we have a random binary jmp-setup and some rpms.

So we start with the rpms i think. Start be installing alien
sudo apt-get install alien

The next setup is moving the files off the cd-rom on to the hard drive as alien needs to be run where you have read write access.

We convert the following rpms.

sudo alien jmp-lang-enUS-7.0.1-1.noarch.rpm
sudo alien jmp-setup-al-1.2-3.i686.rpm
sudo alien jmp-base-al-7.0.1-1.i686.rpm

Install your new debs using dpkg

sudo dpkg -i jmp-setup-al_1.2-4_i386.deb
sudo dpkg -i jmp-lang-enus_7.0.1-2_all.deb
sudo dpkg -i jmp-base-al_7.0.1-2_i386.deb

I located JMP in my /opt/SAS/JMP7 folder.

I ran sudo ./jmp and yay it showed up in well outdated qt goodness..3.3.8 but the next problem was the license file, i copied and pasted it over from the email i was sent and added it but apparently it’s invalid. Of course having to run jmp as root isn’t ideal but it’s better than rebooting to windows.

Edit:

After reading the License file again there where 2 lines which looked odd 32 and 33, they started the line with a * instead of a space like all the other lines. i deleted these leading *’s and what do you know the file worked fine i now have a working version of JMP installed on ubuntu.

No Problems found yet but i haven’t started my assignment.