Subject: Re: Request to review a paper C515 for Concurrency & Computation: Practice and Experience From: Paul Kelly Date: Fri, 27 Jul 2001 02:10:59 +0100 To: fox@mailer.csit.fsu.edu Sorry it took a while, sorry I can't be more enthusiastic about the paper. Best wishes, Paul Kelly -------------------------- REFEREE'S REPORT Concurrency and Computation:Practice and Experience --------------------------------------------------------------------------- A: General Information Please return to: Geoffrey C. Fox Electronically Preferred fox@csit.fsu.edu Concurrency and Computation: Practice and Experie nce Computational Science and Information Technolog y Florida State University 400 Dirac Science Library Tallahassee Florida 32306-4130 Office FAX 850-644-0098 Office Phone 850-644-4587 but best is cell phone 3152546387 Please fill in Summary Conclusions (Sec. C) and details as appropriate in Secs. D, E and F. B: Refereeing Philosophy We encourage a broad range of readers and contributors. Please judge papers on their technical merit and separate comments on this from those on style and approach. Keep in mind the strong practical orientation that we are trying to give the journal. Note that the forms attached provide separate paper for comments that you wish only the editor to see and those that both the editor and author receive. Your identity will of course not be revealed to the author. C: Paper and Referee Metadata * Paper Number C515: * Date: 27 July 2001 * Paper Title: A parallel algorithm for static slicing of concurrent programs * Author(s): D Goswami and R Mall * Referee: Paul H J Kelly * Address: Dept of Computing, Imperial College, 180 Queen's Gate, Lonodn SW7 2BZ, UK Referee Recommendations. Please indicate overall recommendations here, and details in following sections. 3. reject D: Referee Comments (For Editor Only) I suspect closer inspection will reveal more serious flaws. However the experimental results section alone provides a basis for rejecting the paper, I'm afraid. E: Referee Comments (For Author and Editor) Summary: This paper is about static slicing - finding the set of program statements which might influence a given variable's value at a specified program point. The paper concerns slicing of concurrent programs, and in particular how to reduce the time taken to compute the slice using parallel processing. It combines two published ideas: (1) the authors' algorithm for static slicing of unix-style concurrent programs, and (2) Danicic et al's parallel process network slicing algorithm. The paper explains how the scheme should work, presents an argument for its correctness, and gives some experimental performance results. Strengths: This is a short paper presenting a simple idea, and addresses a fairly interesting problem. Weaknesses: * The experimental evaluation has little or no value: - Although speedup is reported, execution time is not. Thus, there is no baseline against which to evaluate performance. - The algorithm was evaluated on a series of artificial programs of increasing size. No further details of these programs are given. Again, this makes interpretation of the performance figures impossible. * The contribution of the paper is small. This is a small increment over the authors' prior work and the Danicic et al paper. * The authors fail to persuade me that parallelisation is a sensible approach to improving the performance of a slicing system: - it is well-known that the efficiency of data flow analyses depends crucially on traversal order. Is this parallel algorithm performing the same amount of work as the optimal sequential algorithm? - Has the sequential implementation taken advantage of careful data structure design (at least bit-vectors?) - the paper says nothing about this and reports no sequential performance data. - What is the asymptotic complexity of the slicing problem? Is the complexity of slicing concurrent programs worse than slicing sequential programs? How much parallelism is actually present - are there worst-case programs whose analysis runs sequentially? Conclusion: unfortunately, this paper is not suitable for publication. With better presentation of the experimental results and more analysis of the algorithmic complexity and available parallelism, it may be suitable for a workshop or perhaps conference. On a more positive note, I hope very much to see static slicing tools for real languages with concurrency and encourage the authors to develop and apply their ideas. F: Presentation Changes In general the presentation is satisfactory.