Re: [Linaro-mm-sig] [PATCH 08/10] mm: cma: Contiguous Memory Allocator added

2011-06-16 Thread Larry Bassel
On 16 Jun 11 00:06, Arnd Bergmann wrote:
 On Wednesday 15 June 2011 23:39:58 Larry Bassel wrote:
  On 15 Jun 11 10:36, Marek Szyprowski wrote:
   On Tuesday, June 14, 2011 10:42 PM Arnd Bergmann wrote:
   
On Tuesday 14 June 2011 20:58:25 Zach Pfeffer wrote:
 I've seen this split bank allocation in Qualcomm and TI SoCs, with
 Samsung, that makes 3 major SoC vendors (I would be surprised if
 Nvidia didn't also need to do this) - so I think some configurable
 method to control allocations is necessarily. The chips can't do
 decode without it (and by can't do I mean 1080P and higher decode is
 not functionally useful). Far from special, this would appear to be
 the default.
  
  We at Qualcomm have some platforms that have memory of different
  performance characteristics, some drivers will need a way of
  specifying that they need fast memory for an allocation (and would prefer
  an error if it is not available rather than a fallback to slower
  memory). It would also be bad if allocators who don't need fast
  memory got it accidentally, depriving those who really need it.
 
 Can you describe how the memory areas differ specifically?
 Is there one that is always faster but very small, or are there
 just specific circumstances under which some memory is faster than
 another?

One is always faster, but very small (generally 2-10% the size
of normal memory).

Larry

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Linaro-mm-sig] [PATCH 08/10] mm: cma: Contiguous Memory Allocator added

2011-06-15 Thread Larry Bassel
On 15 Jun 11 10:36, Marek Szyprowski wrote:
 Hello,
 
 On Tuesday, June 14, 2011 10:42 PM Arnd Bergmann wrote:
 
  On Tuesday 14 June 2011 20:58:25 Zach Pfeffer wrote:
   I've seen this split bank allocation in Qualcomm and TI SoCs, with
   Samsung, that makes 3 major SoC vendors (I would be surprised if
   Nvidia didn't also need to do this) - so I think some configurable
   method to control allocations is necessarily. The chips can't do
   decode without it (and by can't do I mean 1080P and higher decode is
   not functionally useful). Far from special, this would appear to be
   the default.

We at Qualcomm have some platforms that have memory of different
performance characteristics, some drivers will need a way of
specifying that they need fast memory for an allocation (and would prefer
an error if it is not available rather than a fallback to slower
memory). It would also be bad if allocators who don't need fast
memory got it accidentally, depriving those who really need it.

  
  Thanks for the insight, that's a much better argument than 'something
  may need it'. Are those all chips without an IOMMU or do we also
  need to solve the IOMMU case with split bank allocation?
  
  I think I'd still prefer to see the support for multiple regions split
  out into one of the later patches, especially since that would defer
  the question of how to do the initialization for this case and make
  sure we first get a generic way.
  
  You've convinced me that we need to solve the problem of allocating
  memory from a specific bank eventually, but separating it from the
  one at hand (contiguous allocation) should help getting the important
  groundwork in at first.
 
  The possible conflict that I still see with per-bank CMA regions are:
  
  * It completely destroys memory power management in cases where that
is based on powering down entire memory banks.
 
 I don't think that per-bank CMA regions destroys memory power management
 more than the global CMA pool. Please note that the contiguous buffers
 (or in general dma-buffers) right now are unmovable so they don't fit
 well into memory power management.

We also have platforms where a well-defined part of the memory
can be powered off, and other parts can't (or won't). We need a way
to steer the place allocations come from to the memory that won't be
turned off (so that CMA allocations are not an obstacle to memory
hotremove).

 
 Best regards
 -- 
 Marek Szyprowski
 Samsung Poland RD Center
 
 
 
 ___
 Linaro-mm-sig mailing list
 linaro-mm-...@lists.linaro.org
 http://lists.linaro.org/mailman/listinfo/linaro-mm-sig

Larry Bassel

-- 
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html