The US Patent and Trademark Office officially published a series of twenty-five newly granted patents for Apple Inc. today. In our second granted patent report of the day we cover Apple's OpenCL patent and one that relates to a yet unreleased docking station that provides a moveable connector that is designed to better protect iDevices from damage. We conclude our report with a list of fourteen utility patents covering such things as a data synchronization protocol and a multisector parallel plate antenna for iDevices.
Apple Wins OpenCL Related Patent
Apple has received a Granted Patent relating to data parallel computing. More particularly, this invention relates to thread groupings across both CPUs (Central Processing Units) and GPUs (Graphical Processing Units). In plain English, Apple's patent relates to OpenCL.
Apple's Patent Background: As GPUs continue to evolve into high performance parallel computing devices, more and more applications are written to perform data parallel computations in GPUs similar to general purpose computing devices. Today, these applications are designed to run on specific GPUs using vendor specific interfaces. Thus, these applications are not able to leverage processing resources of CPUs even when both GPUs and CPUs are available in a data processing system. Nor can processing resources be leveraged across GPUs from different vendors where such an application is running.
However, as more and more CPUs embrace multiple cores to perform data parallel computations, more and more processing tasks can be supported by either CPUs and/or GPUs whichever are available. Traditionally, GPUs and CPUs are configured through separate programming environments that are not compatible with each other. Most GPUs require dedicated programs that are vendor specific. As a result, it is very difficult for an application to leverage processing resources of both CPUs and GPUs, for example, leveraging processing resources of GPUs with data parallel computing capabilities together with multi-core CPUs.
Therefore, there is a need in modern data processing systems to overcome the above problems to allow an application to perform a task using any available processing resources, such as CPUs and one or more GPUs, capable of performing the task.
Overview of Apple's OpenCL Patent
An embodiment of the present invention includes methods and apparatuses that determine a total number of threads to concurrently execute executable codes compiled from a single source for target processing units in response to an API (Application Programming Interface) request from an application running in a host processing unit. The target processing units include GPUs (Graphics Processing Unit) and CPUs (Central Processing Unit). Thread group sizes for the target processing units are determined to partition the total number of threads according to a multi-dimensional global thread number included in the API request. The executable codes are loaded to be executed in thread groups with the determined thread group sizes concurrently in the target processing units.
In an alternative embodiment, thread group sizes for one or more target processing units for executing executable codes compiled from a single source are determined in response to an API request from an application running in host processor. The one or more target processing units include GPUs and CPUs coupled to the host processor to execute the executable codes in parallel. The one or more executable codes are loaded into the one or more target processing units according to the thread group sizes for concurrent execution to optimize runtime resource usage.
Apple's patent FIG. 2 is a block diagram illustrating an example of a computing device with multiple compute processors operating in parallel to execute multiple threads concurrently.
Apple's patent presents twenty-seven patent claims and the first patent claim states the following:
1. A computer implemented method comprising: determining, in response to an API (Application Programming Interface) request from an application running in a host processing unit, a total number of threads to concurrently execute one or more executable codes compiled from a single source for one or more target processing units, the API request including a global thread number having a multi-dimensional value; verifying if a thread group size has been specified by a particular one of the executable codes, the particular executable code to be executed in a particular one of the one or more target processing units, the thread group size to partition the total number of threads; in response to verifying the thread group size has not been specified by a particular one of the executable codes, determining the thread group size for the particular target processing unit based on current resource usage status of the particular target processing unit; and loading the particular executable code of the one or more executable codes to be executed in a thread group of the thread group size concurrently in the particular target processing unit.
Apple credits Aaftab Munshi and Nathaniel Begeman as the inventors of granted patent 8,225,325 which was originally filed in Q4 2008.
Apple Wins Patent for Unreleased Dock with Moveable Connector
Apple has received a Granted Patent that relates to a yet unreleased docking station for an electronic device. More particularly, the present invention relates to a docking station having a connector that is moveable and more durable.
Apple's patent FIG. 2B shows the docking station coupled with a portable electronic device that is supported by a rear reference surface when the rotatable connector is in an upright position; patent FIG. 2C shows the docking station connected to the rotatable connector where the portable electronic device is moved forward relative to the rear reference surface; and patent FIG. 2D shows the docking station connected to the rotatable connector where the portable electronic device is moved past a vertical position.
Apple states that some embodiments will allow the connector to move when connected to a portable electronic device. This movement of the connector can absorb undesirable forces, thereby reducing a likelihood of the connector breaking from misuse. Examples of movement include sliding, translation, flexures, rotation and/or some combination thereof. In one example, if the portable electronic device is pushed forward, the connector can rotate, thereby reducing the likelihood of breakage from such a push.
For more details, see patent 8,223,483. Apple credits Jeff Hayashida, Cameron Frazier and Emery Sanford as the inventors of this granted patent.
Final Patent Round-Up
Over and above the granted patents that were specifically reported on today, we present you with links to all of the other granted patents in our Final Patent Round-Up as follows:
8,224,927 Protocol for remote user interface for portable media device with dynamic playlist management
8,224,918 Data synchronization protocol
8,224,751 Device-independent management of cryptographic information
8,224,661 Adapting masking thresholds for encoding audio data
8,224,086 Methods and apparatuses for restoring color and enhancing electronic images
8,223,986 Electronic device and external equipment with digital noise cancellation and digital audio path
8,223,875 Beamforming for non-collaborative, space division multiple access systems
8,220,142 Method of forming a housing component (see related graphics below).
8,223,845 Multithread processing of video frames
8,223,482 Portable hard drive and mounting structure for same
8,223,134 Portable electronic device, method, and graphical user interface for displaying electronic lists and documents
8,223,082 Slot antennas for electronic devices
8,223,077 Multisector parallel plate antenna for electronic devices
8,222,773 Power adapters for powering and/or charging peripheral devices
Note to Referring Sites: We ask that referring sites limit the use of our graphics to a single graphic for this report. Thank you for your cooperation.
Patently Apple presents only a brief summary of granted patents with associated graphics for journalistic news purposes as each Granted Patent is revealed by the U.S. Patent & Trademark Office. Readers are cautioned that the full text of any Granted Patent should be read in its entirety for full details. About Comments: Patently Apple reserves the right to post, dismiss or edit comments.
Check out Patent Bolt's Latest Report Titled: