views:

195

answers:

4

Hello, I posted this on daniweb, but have revised my thoughts on the matter.

Basically my 'Integrated Software Systems' class midterm is to take some code (either you wrote or someone else's) and optimize it.

I thought to myself why not use this opportunity to enrich the open source community, I know it's really going to only be a function or so, but if more people from the course were interested maybe it would make some progress for some projects.

So does anyone know of any functions or small chunks of code (nothing really large), that would be somewhat easy to stub out and just run independently of the rest of the code, and just work on optimizing it, especially pieces that need to run fast, that are in an open source project?

I'll definitely post this on my blog and refer people to this question for people wanting ideas on functions to work on from my course.

Frankly I've been tired of just doing work that is academia only and it really isn't helping anyone except learning theoretical stuff, I would rather put it to good use and help others.

A: 

You can download the code for this travelling salesman solver and optimize it: http://www.gebweb.net/optimap/

taspeotis
At this point I would prefer c/c++ but am still open to suggestions, I'm actually looking at the site right now. Thank you,
onaclov2000
I suspect this is a joke. You should read up on the Traveling Salesman problem.
khedron
I suspect this would be more related to algorithms, whereas I'm more interested in things like loop unrolling/parallelism, and code motion type of optimizations. Minor algorithm optimizations are fine, but anything overly complicated is beyond the scope of the project we're working on. I'm sorry I should have specified that more clearly.
onaclov2000
A: 

How about a nice little game of Boggle?

There's probably ways to optimize string comparisons, loops, search algorithms, caches.

JRL
Looks interesting, thank you!
onaclov2000
+1  A: 

hi.

  • ATLAS - might be hard to improve, but if you do, big kudos
  • UBLAS - may be able to improve some common expression patterns
  • sympy - python code, some routines are slow. developers would definitely appreciate help.

Probably sympy would have greatest payoff in terms of improvement. Atlas would be nearly impossible to improve in my opinion.

you could also check out projects links on oonumerics.org, but if you do choose project, make sure it is still active. the projects are grouped by their fields so you have a lot to choose from.

aaa
A: 

Yes, we'd appreciate any help with optimizing sympy. :)

Ondrej

Ondrej
add a link please.
onaclov2000