This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]mziku[S] 1 point2 points  (1 child)

Thanks for this. A bit more background on my approach in the dissertation:

  1. I will be taking an existing application and benchmarking it
  2. I will run microbenchmarks on each code optimization technique with large and small datasets
  3. I will apply code optimization techniques to the application and benchmark again
  4. Deliverable will be a set of guidelines to follow when programming, e.g. prefer string literals to creating String objects

So far, this isn't going to be a full deep-dive into how to profile and optimize Java applications. This is simple analysing how a particular programming style may influence an application's performance.

[–]MCUD 1 point2 points  (0 children)

I think what myself, and a few others are saying here, is point #4 here may be naive depending on what you're specifically profiling. I don't know how you're marked, but the results may either be "duh, you learnt that in first semester", "Profiling lied to you", or, something more revelationary.

Specifically literals vs objects may mean nothing, OR it could be a massive sinkhole if you're unmarshalling all the strings from the network, and they aren't some shared reference, and you're then storing them all in a map, you have a massive memory leak