I'm not sure if this project is still active, but we found this plugin and decided to give it a try with a new moodle install. During testing, it worked great, but once we imported approx 3 courses, and 3,000 users, we started having issues: Anytime anyone would access the report, the page would timeout and generate a 503 error.
After digging in the logs, we found that the $compdatasql query was examining a little over 13,000,000 rows when it ran, which is a little insane for our current dataset.
$compdatasql = "SELECT DISTINCT cr.id AS courseid, cr.fullname AS coursename,
COUNT(DISTINCT ra.id ) AS enrols,
COUNT(DISTINCT cc.timecompleted) AS completed
FROM {course} cr
JOIN {context} ct ON ( ct.instanceid = cr.id )
LEFT JOIN {role_assignments} ra ON ( ra.contextid = ct.id ) and ra.roleid = 5
LEFT JOIN {course_completions} cc ON cc.course = cr.id
WHERE ct.contextlevel = ? AND cr.id <> ? AND cr.enablecompletion = ?
GROUP BY cr.fullname, cr.id
ORDER BY coursename";
$compdatasql = "SELECT DISTINCT cr.id AS courseid, cr.fullname AS coursename,
COUNT(DISTINCT ra.id ) AS enrols,
COUNT(DISTINCT cc.timecompleted) AS completed
FROM {course} cr
JOIN {context} ct ON ( ct.instanceid = cr.id )
LEFT JOIN {role_assignments} ra ON ( ra.contextid = ct.id ) and ra.roleid = 5
LEFT JOIN {course_completions} cc ON cc.course = cr.id AND ra.userid = cc.userid
WHERE ct.contextlevel = ? AND cr.id <> ? AND cr.enablecompletion = ?
GROUP BY cr.fullname, cr.id
ORDER BY coursename";