System and method for compiling source code for multi-processor environments
    31.
    发明申请
    System and method for compiling source code for multi-processor environments 审中-公开
    用于编译多处理器环境的源代码的系统和方法

    公开(公告)号:US20050071828A1

    公开(公告)日:2005-03-31

    申请号:US10671056

    申请日:2003-09-25

    CPC classification number: G06F9/44547 G06F8/447

    Abstract: A system and method for compiling source code for multi-processor environments is presented. Source code is compiled which creates an object file whereby the object file includes multiple object code subtasks. Source code subtasks are compiled into object code subtasks using one of three approaches which are 1) a lowbrow approach, 2) a brute force approach, and 3) a program directive approach. Each object code subtask is formatted to run on a particular processor type with a particular architecture, such as a microprocessor-based architecture or a digital signal processor-based architecture. During runtime, each object code is loaded onto its corresponding processor type for execution.

    Abstract translation: 介绍了一种用于编译多处理器环境的源代码的系统和方法。 源代码被编译,其创建目标文件,由此目标文件包括多个目标代码子任务。 使用三种方法之一将源代码子任务编译为目标代码子任务,这三种方法之一是低级方法,2)强力方法,以及3)程序指令方法。 每个目标代码子任务被格式化为在具有特定架构的特定处理器类型上运行,例如基于微处理器的架构或基于数字信号处理器的架构。 在运行时,每个目标代码被加载到其相应的处理器类型上以供执行。

    System and method for solving a large system of dense linear equations
    32.
    发明申请
    System and method for solving a large system of dense linear equations 有权
    用于求解大密度线性方程组的系统和方法

    公开(公告)号:US20050071404A1

    公开(公告)日:2005-03-31

    申请号:US10670837

    申请日:2003-09-25

    CPC classification number: G06F17/16

    Abstract: A method and system for solving a large system of dense linear equations using a system having a processing unit and one or more secondary processing units that can access a common memory for sharing data. A set of coefficients corresponding to a system of linear equations is received, and the coefficients, after being placed in matrix form, are divided into blocks and loaded into the common memory. Each of the processors is programmed to perform matrix operations on individual blocks to solve the linear equations. A table containing a list of the matrix operations is created in the common memory to keep track of the operations that have been performed and the operations that are still pending. SPUs determine whether tasks are pending, access the coefficients by accessing the common memory, perform the required, and store the result back in the common memory for the result to be accessible by the PU and the other SPUs.

    Abstract translation: 一种使用具有处理单元和一个或多个辅助处理单元的系统来解决大密度线性方程组的方法和系统,所述二次处理单元可以访问公共存储器以共享数据。 接收与线性方程组对应的一系列系数,将这些系数置于矩阵形式之后,分成块并加载到公共存储器中。 每个处理器被编程为对各个块执行矩阵运算以求线性方程。 在公共内存中创建包含矩阵操作列表的表,以跟踪已执行的操作和仍在挂起的操作。 SPU确定任务是否正在等待,通过访问公共存储器访问系数,执行所需的并将结果存储在公共存储器中,以使结果可由PU和其他SPU访问。

    Apparatus and method for efficient communication of producer/consumer buffer status
    33.
    发明申请
    Apparatus and method for efficient communication of producer/consumer buffer status 审中-公开
    用于生产者/消费者缓冲状态的高效通信的装置和方法

    公开(公告)号:US20070174411A1

    公开(公告)日:2007-07-26

    申请号:US11340453

    申请日:2006-01-26

    CPC classification number: G06F15/17337

    Abstract: An apparatus and method for efficient communication of producer/consumer buffer status are provided. With the apparatus and method, devices in a data processing system notify each other of updates to head and tail pointers of a shared buffer region when the devices perform operations on the shared buffer region using signal notification channels of the devices. Thus, when a producer device that produces data to the shared buffer region writes data to the shared buffer region, an update to the head pointer is written to a signal notification channel of a consumer device. When a consumer device reads data from the shared buffer region, the consumer device writes a tail pointer update to a signal notification channel of the producer device. In addition, channels may operate in a blocking mode so that the corresponding device is kept in a low power state until an update is received over the channel.

    Abstract translation: 提供了用于生产者/消费者缓冲器状态的有效通信的装置和方法。 利用该设备和方法,当设备使用设备的信号通知通道在共享缓冲区域上执行操作时,数据处理系统中的设备通知彼此对共享缓冲区域的头和尾指针的更新。 因此,当向共享缓冲区域产生数据的生成器设备将数据写入到共享缓冲区域时,对头指针的更新被写入消费者设备的信号通知通道。 当消费者设备从共享缓冲区域读取数据时,消费者设备将尾指针更新写入生成器设备的信号通知通道。 此外,信道可以以阻塞模式操作,使得对应的设备保持在低功率状态,直到通过信道接收到更新。

    Optimizing power and performance using software and hardware thermal profiles
    34.
    发明申请
    Optimizing power and performance using software and hardware thermal profiles 审中-公开
    使用软件和硬件热剖面优化功率和性能

    公开(公告)号:US20070124618A1

    公开(公告)日:2007-05-31

    申请号:US11289090

    申请日:2005-11-29

    CPC classification number: G06F1/206 G06F1/3203 Y02D10/16 Y02D10/24

    Abstract: A computer implemented method, data processing system, and computer usable code are provided for using software and hardware thermal profiles to schedule the execution of applications. Hardware and software thermal profiles are generated for a set of processors and a set of applications, respectively, to form a plurality of hardware and software thermal profiles. Then a set of hardware and software thermal profiles are selected from the plurality of hardware and software thermal profiles. The set of software thermal profiles and the set of hardware thermal profiles are used to generate a thermal index. Finally, the execution of the set of applications is scheduled using the thermal index.

    Abstract translation: 提供计算机实现的方法,数据处理系统和计算机可用代码,以使用软件和硬件热分布来调度应用程序的执行。 为一组处理器和一组应用程序分别生成硬件和软件热分布,以形成多个硬件和软件热分布。 然后从多个硬件和软件热分布中选择一组硬件和软件热分布。 软件热分布集和硬件热分布集合用于产生热指数。 最后,使用热指数调度该组应用程序的执行。

    System and method for managing position independent code using a software framework
    35.
    发明申请
    System and method for managing position independent code using a software framework 失效
    使用软件框架管理与位置无关的代码的系统和方法

    公开(公告)号:US20060112368A1

    公开(公告)日:2006-05-25

    申请号:US10988288

    申请日:2004-11-12

    CPC classification number: G06F9/44526

    Abstract: A system and method for managing position independent code using a software framework is presented. A software framework provides the ability to cache multiple plug-in's which are loaded in a processor's local storage. A processor receives a command or data stream from another processor, which includes information corresponding to a particular plug-in. The processor uses the plug-in identifier to load the plug-in from shared memory into local memory before it is required in order to minimize latency. When the data stream requests the processor to use the plug-in, the processor retrieves a location offset corresponding to the plug-in and applies the plug-in to the data stream. A plug-in manager manages an entry point table that identifies memory locations corresponding to each plug-in and, therefore, plug-ins may be placed anywhere in a processor's local memory.

    Abstract translation: 提出了一种使用软件框架管理与位置无关的代码的系统和方法。 软件框架提供了缓存加载在处理器本地存储中的多个插件的能力。 处理器从另一处理器接收命令或数据流,其包括对应于特定插件的信息。 处理器使用插件标识符在必需之前将插件从共享内存加载到本地内存中,以便最小化延迟。 当数据流请求处理器使用插件时,处理器检索对应于插件的位置偏移并将插件应用于数据流。 插件管理器管理一个入口点表,用于标识与每个插件相对应的存储位置,因此插件可以放置在处理器的本地存储器中的任何位置。

    System and method for terrain rendering using a limited memory footprint
    36.
    发明申请
    System and method for terrain rendering using a limited memory footprint 失效
    使用有限的内存占用的地形渲染的系统和方法

    公开(公告)号:US20050285852A1

    公开(公告)日:2005-12-29

    申请号:US10875946

    申请日:2004-06-24

    CPC classification number: G06T17/05 G06T15/06

    Abstract: A system and method for terrain rendering using a limited memory footprint is presented. A system and method to perform vertical ray terrain rendering by using a terrain data subset for image point value calculations. Terrain data is segmented into terrain data subsets whereby the terrain data subsets are processed in parallel. A bottom view ray intersects the terrain data to provide a memory footprint starting point. In addition, environmental visibility settings provide a memory footprint ending point. The memory footprint starting point, the memory footprint ending point, and vertical ray adjacent data points define a terrain data subset that corresponds to a particular vertical ray. The terrain data subset includes height and color information which are used for vertical ray coherence terrain rendering.

    Abstract translation: 提出了一种使用有限内存占用的地形渲染的系统和方法。 通过使用用于图像点值计算的地形数据子集来执行垂直射线地形渲染的系统和方法。 地形数据被分割成地形数据子集,由此地形数据子集被并行处理。 底视图与地形数据相交以提供内存覆盖起始点。 此外,环境可见性设置提供了内存占用的终点。 内存占用开始点,内存占位符终点和垂直射线相邻数据点定义对应于特定垂直射线的地形数据子集。 地形数据子集包括用于垂直射线相干地形渲染的高度和颜色信息。

    System and method for balancing computational load across a plurality of processors
    37.
    发明申请
    System and method for balancing computational load across a plurality of processors 失效
    用于平衡多个处理器上的计算负载的系统和方法

    公开(公告)号:US20050081182A1

    公开(公告)日:2005-04-14

    申请号:US10670826

    申请日:2003-09-25

    CPC classification number: G06F9/5044

    Abstract: A system and method for balancing computational load across a plurality of processors. Source code subtasks are compiled into byte code subtasks whereby the byte code subtasks are translated into processor-specific object code subtasks at runtime. The processor-type selection is based upon one of three approaches which are 1) a brute force approach, 2) higher-level approach, or 3) processor availability approach. Each object code subtask is loaded in a corresponding processor type for execution. In one embodiment, a compiler stores a pointer in a byte code file that references the location of a byte code subtask. In this embodiment, the byte code subtask is stored in a shared library and, at runtime, a runtime loader uses the pointer to identify the location of the byte code subtask in order to translate the byte code subtask.

    Abstract translation: 一种用于平衡多个处理器上的计算负载的系统和方法。 源代码子任务被编译成字节代码子任务,从而在运行时将字节代码子任务转换为处理器特定目标代码子任务。 处理器类型选择基于以下三种方法之一:1)强力方法,2)较高级别的方法,或3)处理器可用性方法。 每个对象代码子任务都以相应的处理器类型加载以执行。 在一个实施例中,编译器将指针存储在引用字节代码子任务的位置的字节代码文件中。 在本实施例中,字节代码子任务存储在共享库中,并且在运行时,运行时加载器使用指针来标识字节代码子任务的位置,以便翻译字节代码子任务。

    System and method for dynamically partitioning processing across plurality of heterogeneous processors
    38.
    发明申请
    System and method for dynamically partitioning processing across plurality of heterogeneous processors 失效
    用于在多个异构处理器之间动态分割处理的系统和方法

    公开(公告)号:US20050081181A1

    公开(公告)日:2005-04-14

    申请号:US10670824

    申请日:2003-09-25

    Abstract: A program is into at least two object files: one object file for each of the supported processor environments. During compilation, code characteristics, such as data locality, computational intensity, and data parallelism, are analyzed and recorded in the object file. During run time, the code characteristics are combined with runtime considerations, such as the current load on the processors and the size of the data being processed, to arrive at an overall value. The overall value is then used to determine which of the processors will be assigned the task. The values are assigned based on the characteristics of the various processors. For example, if one processor is better at handling intensive computations against large streams of data, programs that are highly computationally intensive and process large quantities of data are weighted in favor of that processor. The corresponding object is then loaded and executed on the assigned processor.

    Abstract translation: 一个程序进入至少两个对象文件:一个对象文件,用于每个受支持的处理器环境。 在编译过程中,将数据位置,计算强度和数据并行等代码特征分析并记录在目标文件中。 在运行时间期间,代码特征与运行时考虑相结合,例如处理器上的当前负载和正在处理的数据的大小,以达到总体值。 然后,总体值用于确定哪些处理器将被分配任务。 这些值基于各种处理器的特性分配。 例如,如果一个处理器更好地处理针对大量数据流的密集计算,则高度计算密集的程序和处理大量数据的程序对该处理器进行加权。 然后在分配的处理器上加载和执行相应的对象。

    System and method for processor thread for software debugging
    39.
    发明申请
    System and method for processor thread for software debugging 有权
    处理器线程的系统和方法用于软件调试

    公开(公告)号:US20050071814A1

    公开(公告)日:2005-03-31

    申请号:US10670834

    申请日:2003-09-25

    CPC classification number: G06F11/366

    Abstract: A system and method for using a processor thread as a debugger is presented. A computer system boots up and initiates a debugger thread. The debugger thread loads a robust, debugger operating system and executes the debugger operating system. Once the debugger thread is functioning, the debugger thread invokes an operational thread. In turn, the operational thread loads a primary operating system and may run various applications. While the operational thread executes the primary operating system and the applications, the debugger thread monitors the operational thread for proper functionality. When the operational thread crashes or terminates, the debugger thread retrieves operational data from the operational thread and provides the operational data to a software developer for analysis.

    Abstract translation: 提出了一种使用处理器线程作为调试器的系统和方法。 计算机系统启动并启动调试器线程。 调试器线程加载一个强大的调试器操作系统,并执行调试器操作系统。 一旦调试器线程正常运行,调试器线程调用一个操作线程。 反过来,操作线程加载主操作系统并且可以运行各种应用。 当操作线程执行主操作系统和应用程序时,调试器线程监视操作线程以获得正确的功能。 当操作线程崩溃或终止时,调试器线程从操作线程中检索操作数据,并将操作数据提供给软件开发人员进行分析。

Patent Agency Ranking