Editing User:Stattrav/GSoC2012 log

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
===22 August 2012===
+
===12 Jun 2012===
* Tried running the bottle app on multi-threaded and asynchronous servers. Tested out Tornado. Currently running on python-paste
+
* Finally have the base code for upload ready. Using the ApiUpload as a base, implementing the feature. Should have it ready by tomorrow.
 +
* Silly feature but it has taken a lot of time. But I've learnt enough to work on the frontend right away.
 +
 +
===11 Jun 2012===
 +
* Initially figured out that Localsettings.php was not being loaded by the api.php. Using reflectionclasses found out why class instantiation was failing. 1. The file was not loadable and 2. methods were not properly defined.
  
===20 August 2012===
+
===10 Jun 2012===
* Documentation
+
* Spent some time checking the pipeline of the calls of the api. Figured out what was going wrong. Class instantiation of the API was failing. Now fixing it.
  
===17-19 August 2012===
+
===8 Jun 2012===
* Rolled out the crude website which is hosted at http://88.198.223.105:8080/
+
* Failed attempts with respect to getting the API working.
* Upload page working on the localhost but buggy on the VPS
 
* Documentation
 
* Full of bugs, project immature
 
  
=== 15-16 August 2012 ===
+
===5 Jun 2012===
* Added views for the plots and configured the output to be presented via the template in the view
+
* Understood the extensions framework of mediawiki and API framework and interfaces via the special pages.
* Made changes to existing folder structure for the Bottle app to run
+
* API file upload still did not work locally. Still figuring it out because of some authentication token related issues
* Configured and made a run_server.py script
+
* Laid out the skeletal structure for the extension
* Source is at https://bitbucket.org/suryajith/benchmark/src
 
* Awaiting Dr.Rai's perusal of the patches.
 
[[Image:absavgperfvsimagescomb.png|900px]]
 
[[Image:absavgperfvsimages2.png|900px]]
 
[[Image:absavgperfvsimages1.png|900px]]
 
[[Image:absavgperfvsarchpermhz.png|900px]]
 
[[Image:absavgperfvsarch.png|900px]]
 
  
 +
===4 Jun 2012===
 +
* Started writing the mediawiki extension. Mediawiki extension tutorials are extremely vague and it is taking me some time to sink in the necessary details.
  
===12-14 August 2012===
+
===1 Jun 2012===
* Necessary changes in the db structure for the data needed for graphs
+
* Wrote a logger for the existing code plus a bit of sanity check and cleanup for the already existing code.
* Necessary changes to the Parser script
+
* Was reading up the API documentation of mediawiki, its file upload [http://www.mediawiki.org/wiki/API:Upload| via API] and [http://www.mediawiki.org/wiki/API:Calling_internally| calling API from an extension]
* Implemented
 
** Absolute Performance vs Reference images over various architectures
 
** Average Performance vs Architectures
 
** Average Performance per CPU MHz vs Architectures
 
** Absolute Performance vs CPU over various architectures
 
** Absolute Performance vs CPU over various images for specific architecture
 
* Forms for comparision between various architectures
 
* Three modes of data displayed : text, table, graph
 
* Below are some examples of the graphs generated from the data in the database
 
[[Image:Perfvsimages.png|900px]]
 
[[Image:absavgperfpermhz.png|900px]]
 
[[Image:Absavgperf.png|900px]]
 
  
===8-11 August 2012===
+
===30 May 2012===
* MVC framework using bottle
+
* Rewrote the parser as the old was monolithic scraper. Implemented the Parser class and some sub routines. Submitted two patches. [https://sourceforge.net/tracker/?func=detail&aid=3530951&group_id=105292&atid=640804| Patch1] [https://sourceforge.net/tracker/?func=detail&aid=3530950&group_id=105292&atid=640804| Patch2]
* Developed controllers for upload and basic charting libraries
+
* Results of the scraping are as follows.
* Charting libraries : Wrapper over the GCharts by generating and thus embedding the js code
+
[[Image:Benchmark_perfomance_db.png|800px]]
 +
* Code layout has been changed:
 +
  svnroot/brlcad/web/trunk/benchmark
 +
                                    |- config
 +
                                    |_ libs
 +
                                          |_ parser.py
 +
                                          |_ util.py
 +
                                    |_ scripts
 +
                                              |_ parse.py
 +
                                    |_ sql
 +
                                          |_ benchmark_db.sql
 +
* config file layout is as follows :
 +
[database]
 +
host = localhost
 +
username = <user>
 +
password = <pass>
 +
database = benchmark_db
  
===1-6 August 2012===
+
[locations]
* More failed attempts at working with mediawiki
+
archive = ./archive
 +
benchmark_root = path/to/trunk/htdocs/benchmark/
  
===28-29 July 2012===
+
===28 May 2012===
* Implemented a custom form renderer.
+
* The data is now pushed into the db. Takes the settings from a config file situated in the root of the benchmark source.
* Results to be integrated.
+
* Cleaning the script and testing with the data. I shall send in a formal mail discussing the script execution and usage which presents the work I've done.
  
===21 July 2012===
+
===27 May 2012===
* Realized that simpleforms do not help much and have begun writing the forms natively in PHP.
+
* Made the code completely based on the regexes as per the syntax in the bench/run.sh file.
  
===20 July 2012===
+
===24 May 2012===
* Still figuring out the forms and the implementation of the actions
+
* Crude script for the parser and to transfer the data to the db.
  
===17-18 July 2012===
+
===22 May 2012===
* Playing around with the Simple forms extension. Naive html forms wouldn't help as the action can't be hard coded.  
+
* Made progress with the parser.  
* It has some issues with mediawiki 1.20(alpha) due to some deprecations in the mediawiki codebase but figured out a few of them.
+
* Code layout in terms of the folders was decided upon and is as follows:
 +
  svnroot/brlcad/web/trunk/benchmark
 +
                                    |_ scripts
 +
                                              |_ parser.py
 +
                                    |_ sql
 +
                                          |_ benchmark_db.sql
  
 +
===21 May 2012===
 +
* Completed the [http://sourceforge.net/tracker/?func=detail&aid=3528693&group_id=105292&atid=640804| patch] for the bench/pixcmp.c. Preliminary testing done. Benchmark script executes without fail. Waiting for Sean to approve and say if that is what is really wanted.
 +
brlcad-build → bin/pixcmp -d4 ../brlcad/pix/moss.pix ../brlcad/pix/moss_new.pix
 +
pixcmp pixels: 262140 matching, 4 off by 4, 0 off by many
  
===11-12 July 2012===
+
brlcad-build → bin/pixcmp -d2 ../brlcad/pix/moss.pix ../brlcad/pix/moss.pix
* Upload form on the special page.
+
pixcmp pixels: 262144 matching, 0 off by 2, 0 off by many
* Read up on Google charts embedding. Thoughts on the features required for the frontend.
 
  
===9-10 July 2012===
+
brlcad-build → bin/pixcmp -d2 ../brlcad/pix/moss.pix ../brlcad/pix/moss_new.pix
* Documentation and fixing the flow. logging cleanup.
+
pixcmp pixels: 262140 matching, 4 off by 2, 0 off by many
* Frontend
 
  
===5 July 2012===
+
brlcad-build → bin/pixcmp -d1 ../brlcad/pix/moss.pix ../brlcad/pix/moss_new.pix
* Read up the forms implementation for the frontend of mediawiki extension
+
pixcmp pixels: 262140 matching, 2 off by 1, 2 off by many
  
===3 July 2012===
+
brlcad-build → bin/pixcmp ../brlcad/pix/moss.pix ../brlcad/pix/moss_new.pix
* Web API set up. Mail has been sent to the mailing list asking folks to submit the logs through the API and mail.
+
  pixcmp pixels: 262140 matching, 2 off by 1, 2 off by many 
* Documentation, implement logging through out.
 
* Read up about frontend forms for upload and data request.
 
* The frontend is being setup through a special page which is the view part of the mediawiki extension.
 
  
===1 July 2012===
+
* Started writing the log parser.
* Setting the demo server up. It is hosted at http://88.198.223.105 and that is being configured now for the demo purposes.
 
* Documentation of the work
 
  
===30 Jun 2012===
+
===18 May 2012===
* Integrating all the things worked on. Testing the process.
+
* Started looking into the issue which Sean mentioned which is related to pixcmp and found nothing there. Sean later found out that the bug was in the pixdiff utilty.
 +
* Amidst this, I found that after the recent (svn) update of the code the benchmark test for sphflake was failing. I then spent time on figuring out(using binary search) the bug and found that r50582 was responsible for the same.
  
===29 Jun 2012===
+
===17 May 2012===
*
+
* Working on a patch for the bench/pixcmp.c functionality.
 +
 
 +
===15 May 2012===
 +
* Set up a dummy database without much changes to the schema mentioned as a part of the proposal and then started writing crude parser scripts in python.
 +
* Setup thrift on my machine. Had faced few difficulties setting it up with php 5.4.3 and Python 3.2 The issues with php 5.4.3 were resolved but the ones with Python 3.2 were quite a few specially related to the syntactic changes during the transition from 2.x to 3.x. Downgraded python to 2.7.3 and completed the setup. Yet to test the interlanguage communication. Shall do it tomorrow.
 +
 
 +
===14 May 2012===
 +
* Experimenting with regexes for the benchmark log parsing.
 +
 
 +
===13 May 2012===
 +
* Moved from ubuntu 12.04 which I did not really like to Archlinux and setup the work environment.
 +
 
 +
===12 May 2012===
 +
 
 +
* Set up mediawiki on the local machine and then was experimenting with the api.php of mediawiki.
 +
 
 +
===9 May 2012===
 +
* Continued experimentation with the benchmark script and finally understood what each part of the code does.
 +
* Working on a back-end design (Sent in a mail to the developer mailing list). Shall start working on the db design.
 +
 
 +
 
 +
===8 May 2012===
 +
* Continued experimentation with benchmark script and attempting to create the first patch by fixing the following block in the run.sh script.
 +
 
 +
    # FIXME: should really iterate one file at a time so we don't
 +
    # just zero-pad at the end
 +
    perf_VGRREF=`grep RTFM $perf_ref_files | sed -n -e 's/^.*= *//' -e 's/ rays.*//p' | tr '\012' '\011' `
 +
    perf_CURVALS=`grep RTFM $perf_cur_files | sed -n -e 's/^.*= *//' -e 's/ rays.*//p' | tr '\012' '\011' `
 +
 
 +
* Working on a set of questions for design discussions.
 +
 
 +
 
 +
 
 +
===7 May 2012===
 +
* Still looking into benchmark script and experimenting with that.
 +
 
 +
 
 +
===4 May 2012===
 +
* Compiled the brlcad(r50443) on my new setup of Ubuntu 12.04. Installation went on smoothly when librtserver JDK support was disabled.(I was trying various options during compilation.) When turned on, there were the error of it not being able to find jni.h even though the paths were fine. Looking into it at the moment.
 +
* Could not understand why cmake was looking for STDCXX libs.
 +
* Ran the benchmark on the machine and sent the report to benchmark@brlcad.org
 +
* Started looking into the run.sh script to figure out how it really works.

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)