1. A power-optimizing memory analyzer for use with an array of memory blocks, comprising: a task database configured to provide a parameter set corresponding to each of a set of tasks to be performed in a system; and an allocation module configured to determine offline a group of memory blocks in the array corresponding to the parameter set for each task and based on providing a power reduction for the array.