1. A device including a multimedia processor to concurrently support multiple applications, the multimedia processor comprising: configurable storage resources to store instructions, data, and state information for the multiple applications; and assignable processing units to perform processing for the multiple applications, wherein the multimedia processor allocates a configurable portion of the storage resources to each application and dynamically assigns the processing units to the multiple applications as requested by the applications.