Quadrature representation does not report total operations

Issue #37 wontfix
Marie Elisabeth Rognes created an issue

The tensor representation reports (in a comment) the total number of operations to compute the element tensor. This is quite useful. It would be good if the quadrature representation also reported this number.

Comments (12)

  1. Marie Elisabeth Rognes reporter
    1. Does it? I was talking about the following (for the tensor representation)
      /// Tabulate the tensor for the contribution from a local cell
      virtual void tabulate_tensor(double*  A,
                                   const double * const *  w,
                                   const double*  vertex_coordinates,
                                   int cell_orientation) const
      {
        // Number of operations (multiply-add pairs) for Jacobian data:      3
        // Number of operations (multiply-add pairs) for geometry tensor:    139
        // Number of operations (multiply-add pairs) for tensor contraction: 3627
        // Total number of operations (multiply-add pairs):                  3769
    

    But I see now this, for the quadrature representation, buried deep down in the code:

     // Number of operations to compute element tensor for following IP loop = 861220
    

    Perhaps this could be moved up and consistentified.

    1. Useful for quantifying the computational expense of a given element kernel.
  2. Martin Sandve Alnæs

    Perhaps. Or perhaps the different structure of the code makes the numbers not so meaningful to compare. Number of operations is not necessarily a good measure of the computational expense.

  3. Kristian Ølgaard

    The operation count for the IP look should be equal to the total count since FFC no longer supports different quadrature degrees within each sub domain. This could be clarified in the text. Looking at the output code for PoissonDG.ufl, the total count is reported in the interior facet integral for each facet-facet combination, still equal to the IP count though. So it looks like some clean up is in place after removing support for different quadrature degrees in same sub domain?

    But as Martin points out, it is not always sufficient to look at the numbers. See: http://repository.tudelft.nl/view/ir/uuid%3A9c703850-e7fd-457c-a94a-ce0c0af27c0d/ http://dl.acm.org/citation.cfm?doid=1644001.1644009 and the FEniCS book (chapter on quadrature representation) for more details.

  4. Kristian Ølgaard

    Did you see my response? I think the operation count is reported as it is identical to the IP loop count. But to fix this bug, should the text and formatting be updated to mirror the tensor representation?

    Kristian

  5. Log in to comment