Development Logs

Community Bonding Period

  • During the community bonding period, I downloaded BRL-CAD and configured and compiled my build. Initially it had some problems (probably due to my proxy settings), but finally it worked while using Ubuntu 17.04, revision r70379 (last known working version of BRL-CAD with openCL) and AMD APP SDK 2.9.1 as an OpenCL ICD.
  • I started to write some code in order to get an advance on my project. This consisted of developing HYP and ARBN shot routines in OpenCL as per my project plan.

Weekly update

  • Week -1
    • May 9: Successfully completed BRL-CAD installation
    • May 10: Completed HYP shot routine in OpenCL
    • May 11: Started doing ARBN shot routine in OpenCL
    • May 12: Continued..
    • May 13: Completed ARBN shot routune in OpenCL
  • Week 1
    • May 14: Studied the DSP C code
    • May 15: Worked on compiling Tk and its dependencies
    • May 16: Started developing DSP shot routine in OpenCL
    • May 17: Continued..
    • May 18: Completed DSP norm code
  • Week 2
    • May 21: Worked on converting recursion structure to an iterative one using loops and stack
    • May 22: Submitted patches for HYP and ARBN primitive for review
    • May 23: continued..
    • May 24: Configured the VirtualBox and ran the Virtual Disk Image file with BRL-CAD and its dependencies compiled in Ubuntu 18.04. The .vdi file can be found at https://mega.nz/#!za5GASRZ!t8jkYok9_6Jg9j5Evga0UESaMZ3H46gHYYhuwcjHg9M
    • May 25: Tested the previous patches for errors
  • Week 3
    • May 28: Studied the bot OpenCL code
    • May 29: Submitted patches for DSP primitive for review
    • May 30: Started working on PIPE shot routine
    • May 31: continued..
  • Week 4
    • Developed METABALL shot routine
  • Week 5
    • First Evaluation Week
  • Week 6
    • June 18: Code perusal and formulating strategies regarding the BREP support
    • June 19: Basics of C++
    • June 20: continued..
    • June 21: Started making a simplified ANSI C version of 'rt_brep_shot'
    • June 22: continued..
  • Week 7
    • June 25: Converting the C++ class into C structures
    • June 26: continued..
    • June 27: Converting other member functions
    • June 28: continued..
    • June 29: Implementing vector definitions of C++ to C
  • Week 8
    • July 2: continued..
    • July 4: Converting the C code to OpenCL
    • July 5: continued..
    • July 6: Implemented the erase() function in C
    • July 7: continued..
  • Week 9
    • Second Evaluation Week
  • Week 10
    • Took a week off due to graduation ceremony
  • Week 11
    • Implemented BBNode, BRNode, OpenNURBS library related struct and functions in OpenCL
  • Week 12
    • Drafting detailed documentation of both the projects
    • Debugged the previous patches for final submission
  • Week 13
    • Submitted VOL primitive code in OpenCL
    • Final Evaluation Week