1. 26 Feb, 2015 1 commit
  2. 19 Feb, 2015 1 commit
    • Kenneth Moreland's avatar
      Add new radix-kr single image composite algorithm · d9622de8
      Kenneth Moreland authored
      The radix-kr is essentially the radix-k algorithm with some ideas from
      2-3 swap added in. Rather than forcing all the k's in radix-k to be
      factors, radix-kr allows the k to have a remainder when splitting the
      process. The remaining processes participate in that round by splitting
      their image and sending them off, but they receive nothing that round
      and then go idle. Although this adds some imbalance, it does not add
      much. It also makes keeping track of partitions easier than 2-3 swap.
      d9622de8
  3. 10 Feb, 2015 2 commits
  4. 19 Jan, 2015 1 commit
    • Kenneth Moreland's avatar
      Add ability to subset a communicator. · e611cd8e
      Kenneth Moreland authored
      For now, I'm just interested in adding the ability to do a scaling study
      in the testing harness, but it may be useful in the future to divide
      communicators and collect data.
      e611cd8e
  5. 25 Sep, 2014 2 commits
    • Kenneth Moreland's avatar
      Add icetCompositeImage to composite pre-rendered images · 7aed1a73
      Kenneth Moreland authored
      I got a request from a developer who was having trouble shoehorning
      IceT's rendering callback mechanism into his client code. This method
      lets the application render an image beforehand and then let IceT just
      do the composite, which is much easier for him.
      7aed1a73
    • Kenneth Moreland's avatar
      Add ability to retreive an image from a state variable · e08b8265
      Kenneth Moreland authored
      Although you could easily create a new image using a state buffer, you
      could not retreive that image without storing the pointer into another
      state buffer. This adds a function named icetRetrieveStateImage to get a
      previously allocated image. This simplfies the code some.
      e08b8265
  6. 01 Jul, 2013 1 commit
  7. 28 Oct, 2011 1 commit
    • Kenneth Moreland's avatar
      Work around when MPI_IN_PLACE not available. · 164b39c6
      Kenneth Moreland authored
      The MPI_IN_PLACE feature, which allows you to do collective operations
      such as gather with the local data already in the destination array, is
      a feature that is not available in MPI 1.  To continue to support MPI
      version 1, implement an alternative copying version that is only used
      for that version.
      164b39c6
  8. 12 May, 2011 1 commit
  9. 05 May, 2011 1 commit
    • Kenneth Moreland's avatar
      icetSendRecvLargeMessages no longer stores all masks for all processes. · b93ca0c8
      Kenneth Moreland authored
      The method did an all gather that collected on each process masks for
      all processes for what processes it gets messages.  This takes n^2
      where n is the number of processes.  For large numbers of processes,
      that gets really big.  This change uses all to all to collect only
      which messages the local process gets.
      b93ca0c8
  10. 04 May, 2011 1 commit
  11. 06 Apr, 2011 1 commit
    • Kenneth Moreland's avatar
      When allocating a state buffer, stomp on memory in debug mode. · 150f2d30
      Kenneth Moreland authored
      There was this stupid hackish thing I was doing when grapping the image
      buffer storing the last render.  Instead of getting it by allocating
      the buffer again, store the pointer in a different state variable.  Now
      you only call allocate when you need a new buffer.
      
      With this change, you only call the state buffer allocate functions when
      you want a fresh buffer.  In debug mode, fill the values with 0xDC to
      make it more obvious when I create an error when reusing buffers.
      150f2d30
  12. 04 Apr, 2011 1 commit
  13. 28 Mar, 2011 1 commit
    • Kenneth Moreland's avatar
      Clean up memory allocations. · 064c2218
      Kenneth Moreland authored
      In most places malloc is called, check to make sure that the returned
      pointer is not null, and emit an out of memory error if it is.
      
      Found several places where free was not always called for all allocated
      memory.
      
      When possible, remove direct calls to malloc in the code and replace
      with the state variable memory management.
      064c2218
  14. 21 Mar, 2011 1 commit
  15. 02 Mar, 2011 1 commit
  16. 18 Feb, 2011 1 commit
  17. 09 Feb, 2011 1 commit
    • Kenneth Moreland's avatar
      Improved timing metrics. · 86a235d4
      Kenneth Moreland authored
      Added header and source files to simplify timing.  You now just call
      functions to mark the beginning and end of function calls.
      86a235d4
  18. 02 Feb, 2011 1 commit
  19. 19 Jan, 2011 1 commit
  20. 10 Jan, 2011 2 commits
  21. 07 Jan, 2011 3 commits
    • Kenneth Moreland's avatar
      Add ICET_SIZE_TYPE identifier. · 692c5ab2
      Kenneth Moreland authored
      692c5ab2
    • Kenneth Moreland's avatar
      Use 32-bit integer for IceTSizeType. · bf1f611e
      Kenneth Moreland authored
      Previously the width of IceTSizeType was the same width of a pointer.
      That makes sense, but even on a 64-bit system it makes no sense to
      create 2 GB buffers.  32-bit sizes and offsets are sufficient for any
      buffer to by used by IceT.
      
      That in itself is no big deal.  However, I am shortly going to need
      to be able to transfer arrays of IceTSizeType, but MPI has no built in
      type for 64-bit integers.  Rather than muck up that code, I changed
      the size type.
      bf1f611e
    • Kenneth Moreland's avatar
      (Re)Add Gather and Gatherv communication functions. · eff63872
      Kenneth Moreland authored
      Also added support for ICET_IN_PLACE_COLLECT for all gather functions.
      eff63872
  22. 16 Dec, 2010 1 commit
  23. 10 Dec, 2010 1 commit
    • Kenneth Moreland's avatar
      Remove Gather for list of commicator functions. · 11a37fd1
      Kenneth Moreland authored
      So far, nothing uses this function.  The most likely use for Gather
      would be to collect image data at the end of compositing, and this
      would require Gatherv, not Gather.
      
      If there is a need later, it is easy enough to add back.
      11a37fd1
  24. 09 Dec, 2010 1 commit
  25. 08 Dec, 2010 1 commit
  26. 02 Dec, 2010 1 commit
  27. 18 Nov, 2010 1 commit
  28. 20 Sep, 2010 1 commit
  29. 09 Aug, 2010 1 commit
  30. 29 Jul, 2010 1 commit
    • Kenneth Moreland's avatar
      Add checks for IceTGL being initialized. · d81fce66
      Kenneth Moreland authored
      Added icetGLIsInitialized so that client code can check to see if
      the GL layer has been initialized yet.  Also added checks to the
      GL functions to make sure that the IceTGL layer was initialized and
      error out if it has not been.
      d81fce66
  31. 28 Jul, 2010 1 commit
    • Kenneth Moreland's avatar
      Make all image formats non-zero. · c9e5596a
      Kenneth Moreland authored
      Previously ICET_IMAGE_COLOR_NONE and ICET_IMAGE_DEPTH_NONE were
      zero.  They are now 0xC000 and 0xD000, respectively.  The logic
      behind this change is to help ensure that the format is always
      initialized to something and to prevent format mixup (using the
      color identifier for depth and vice versa).
      c9e5596a
  32. 20 Jul, 2010 1 commit
    • Kenneth Moreland's avatar
      Change icetImageGetColor/Depth to use short suffixes. · 07c4d37f
      Kenneth Moreland authored
      The icetImageGetColor* and icetImageGetDepth* now use the abbriviated
      OpenGL convention of using single characters to identify type (such as
      ub and f) instead of longer names (such as UByte and Float).  I am
      no longer enamored with this convention, but it is used elsewhere in
      IceT (e.g. icetBoundingBox), and I am a fan of consistency.
      07c4d37f
  33. 19 Jul, 2010 1 commit
    • Kenneth Moreland's avatar
      Use enumerations to identify strategies. · bfe74898
      Kenneth Moreland authored
      Previously, strategies were specified with structures with function
      pointers.  Overly cleaver definitions made them look like macro
      definitions.  This all caused weird complications with calling things.
      Made things more explicit by making the strategy identifiers enumerated
      numbers and using switch statements to call them.
      bfe74898
  34. 14 Jul, 2010 1 commit
  35. 13 Jul, 2010 1 commit
    • Kenneth Moreland's avatar
      Create single image strategy objects. · 34912552
      Kenneth Moreland authored
      In preparation for adding the ability to select the single image
      sub-strategy, encapsulate the methods of doing a single image
      composite into objects that resemble that for the multi-tile
      strategies.
      34912552