From Paula.Perez-Rubio at klinik.uni-regensburg.de Mon Mar 27 16:28:29 2017 From: Paula.Perez-Rubio at klinik.uni-regensburg.de (Paula Perez-Rubio) Date: Mon, 27 Mar 2017 16:28:29 +0200 Subject: [Pcalg-commits] idaFast optimization References: <58D9218D02000088000342E1@gwsmtp1.uni-regensburg.de> Message-ID: <58D9218D02000088000342E1@gwsmtp1.uni-regensburg.de> Dear authors of pcalg, I work as a post-doc in the "Institute of functional Genomics" at the University of Regensburg. I was using your package pcalg and implemented an optimization of the function idaFast, idaFastOpt. I created a pull request in your git-hub repository. Details on the implementation of the function can be read in the README.md file of my repository https://github.com/PaulaAlessio/pcalg Please find attached the patch file and a plot where the runtime of idaFast is compared to the runtime of idaFastOpt in a log-log file. Note that not only the total runtime is significantly reduced, but also the complexity of the algorithm seems to be reduced in my implementation. The improvement is most probably due to: 1. the optimized function was written in C++ using armadillo library 2. the new function creates all possible "configurations" from the set of "ambiguous parents" (to then direct the edges) using bitwise operations and this should be much faster than calling combn to obtain them. Yours sincerely, Paula -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: patch_pcalg.txt URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: timings_log.png Type: image/png Size: 16531 bytes Desc: Portable Network Graphics Format URL: