The polykaryon is challenged again multiple - -The new alliance is working out the norm of communication API of polykaryon
Summary: This text has introduced the processor technology of polykaryon in terms of definition, textural difference, CAPI and embedded software. Keyword: Polykaryon; Symmetrical; Unsymmetry; CAPI
Is it correctly or by mistake? The present refered polykaryon processor is processor producer and IP supplier in order to sell more chips and kernels and the transitionality made is propagandized hotly. The so-called development technology of using direct multiplication of single kernel for this kind of polykaryon processor chip of desk calculating machine and server is pushing to the embedded system directly. If believe this kind of speech about the polykaryon processor on the transactions, waiting will know to at the time of the true requirement for the polykaryon processor characteristic one day in the future, will be astonished definitely. The actual polykaryon processor original document means a kind of new technology about the future microprocessor. Can really sell more chips and kernels, and can demonstrate some desired practical results in characteristic and power consumption in multinuclear deception at present. But unfortunately, used for using in desktop and server above-mentioned directly painless many nuclear technology of multiplication type use help to be limited to a embedded one for many years. In order to further investigate the structural challenge of new polykaryon, the organization of a non-profit-making polykaryon alliance has been established in some companies recently, its aim lies in assisting embedded industry to solve the generality difficult problem of playing polykaryon processor of chip type. This organization first challenge solved to set about Communication difficult problem during the multi-core shell fragment. Developing API norm for Communication among the kernels now. Because alliance this get permission, register formally yet, so member its announce while being inconvenient now. However, have filed an application and already paid for the first time already there are 15 at least in companies of the membership dues.
Multinuclear multiple meaning should be given at first the next definition of polykaryon. The polykaryon has many kinds of definitions, especially unfortunately, the polykaryon has already been abused again and again by the market, and even that is blamed is a kind of fraud. Polykaryon alliance think monolithic the intersection of polykaryon and device should have two and autonomy processing unit of the above. Autonomy or initiative is the important condition of the processing unit. According to this definition, the system with the coprocessor is repelled except polykaryon processor in the procedure of all host computers, it is many nuclear systems and it is nuclear to connect DSP which carry out one’s own instruction stream with host computer. This is a concise part in the definition. If touch upon AMP (unsymmetry is dealt with) And SMP (symmetrical treatment) ,Isomorphism and isomerism, the memorizer shares with the structural style of distributing etc., the concise definition will be broken through. SMP in polykaryon deal with to contain two and occasion of the above, each have the same chip, it is the same as a structural kernel, operate the same software. SMP can share the memory and buffers and bond the part. SMP uses the isologous kernel, though the isologous kernel needn’t be must be SMP. If inside is an isologous kernel, but what every kernel is operated is not identical operating systems, then turn into antisymmetrical multiprocessing (AMP) . AMP system can use the kernel of isomerism and share and store the interface or use and is distributed the memorizer too. Sometimes, AMP and NUMA (not a storage architecture) Can regard as the synonym. In any case, the isomorphism or isomerism kernel can form the polykaryon processor, the polykaryons processor can all press SMP ( symmetrically) Or AMP (unsymmetry) The mode runs. Later on, clarify the composition of each embedded polykaryon processor is very important, because different demands to have different compositions. Freescale and Intel choose a pair of nuclear embedded much nuclear structure of isomorphism with the purpose of employing in advanced industry and communication. Freescale, ST and TI Company regard consumption electronic product of all kinds of multimedia as the goal, uses the embedded chip of polykaryon of isomerism, Nomadik such as i.MX and ST of Freescale. Other companies, have several dozen, several hundred and even thousands of pieces of nuclear isomorphism or isomerism polykaryon processor as PicoChip Design and Connex Technology Company constructs. The intersection of difference and huge the intersection of polykaryon and processor in essence these, programming and hardware high to walk abreast degrees of the intersection of and specialization further in software.
AMP and the intersection of SMP and more difference, about AMP or dispute of pluses and minuses of SMP, from common to calculate polycomputer and multi-processor of field begin, been argueing for a long time and consultation. Though has lasted decades, has not still seen the clear winner float above the surface of water. Two upper and lower level of scheme say, clean the street clear, finally by the applied need in order to do what he thinks is right accurately. Now, the playground here is disputed and transmitted to again embeddedly. Use SMP, views from the point of employing the angle, the operating system has concealed CPU structural quality and offered some additional functions. There are a lot of to can support operating systems of SMP, including real-time operating system. Among them have both the commercial one and open source codes. Relatively AMP is easy in the programming of SMP, though the multithread programming of SMP is relatively difficult. The price of the known software occupies the equivalent number in the project is developed. In addition, SMP is more largely because of a area of silicon, consume energy and keep the complicated scheduling problem of cohesion of cache, there is name of the scheme of high price. Nuclear expenses when a factor of connecting bandwidth, moving ahead simultaneously, locking etc. is strengthened, make the scalability of SMP limited. Moreover, portable SMP system, because need to highly use the network on slice, the multinuclear frequent connection consumes more valuable electricity. The cohesion of cache, initiate SMP system and can’t produce anticipated access delay time, make some real-time application systems unable to accept. SMP system more long access time, even can adopt the multithread of the hardware to remedy, will still produce the decline of the characteristic. Elasticity of SMP system is bad, when nuclear to use the quantity to increase, there will be more kernels that make the characteristic drop because of waiting for thread resources. AMP, under the support condition with hardware, respects such as a area of power consumption, silicon,etc. are improved to some extent, the efficiency ratio is SMP high. According to the traditional statement, the programming of AMP is relatively difficult. Generally speaking, cut utility program apart into Cheng section of loose coupling, it shines upon give distributed AMP to be one light thing in hardware structure and then. Some advocates have argued, can create the stepped health ecotope of the optimizer for AMP. But want to gather a plurality of program segments into the whole with agressiveness, it is not still easy thing. On however, it is at slice polykaryon number increase to certain extent at,it is seem more feasible not to adopt by SMP and AMP schemes mixed.
Many kinds of storage architecture whether the intersection of issue and many nuclear structure can discuss according to the intersection of memorizer and structural style with mechanism that Communication adopt too. For sharing many nuclear systems of storage architecture, adopt SMP programming modes more traditionally. Each kernel can be visited to all memorizers in the global address space. The typical method to visit shared memory is to use the controlling mechanism that inquires through the bus line, it to prevent by a plurality of kernel from with when visit by memorizers same. In order to make every kernel on one can be visited to all memorizers, this is method that directness understands the most. In addition, sharing the storage organization can be used and quoted the way to transmit the data, the data needn’t move truly. At too many kernel with when deposit and withdraw when,know shared memory last bottleneck. Traditional SMP programming mode, can not adapt to many nuclear system processors very much. Because SMP traditional programming mode assumes, there are mechanisms such as homogeneous access structure and buffer memory,etc.. The power consumption of SMP is unsatisfactory, can’t reach several dozen and even several hundred desired nuclear levels of embedded many nuclear systems in the flexible respect either. It is the excessive consuming that SMP moves ahead simultaneously to most embedded many nuclear systems thick and fast. The mode is clumsy and ineffective that embedded many nuclear systems need to be suitable for Communication and programming, but SMP of flow for flowing. The distributed structure includes from global Internet, long haul network (WAN) To the LAN (LAN) ,Server, single chip device with various treatment kernels. For distributing many nuclear systems that are stored, every kernel has one’s own local memory. Though there may the overall situation that stores the address space, need various information transmission and resource synchronization mechanism and could communicate. With one’s own local memory kernel needn’t share, deposit and withdraw with other kernel efficiency and support and stretch out and draw back. Require as kernel a certain from other singly or a plurality of kernel obtain data and when the order, must move ahead simultaneously among them, and the data must move and replace and quote among the processors physically. Information transfer of supporting the portable shape that programming runs side by side. Distributed programming is usually than multithread (but it can work in SMP system it is very good) Programming is easy. However, the required code of the information transmission is greater than running side by side the transmissive share code. The transmission mode of information is a serial Communication process (CSP) at first And the one that design. Can associate it with at wording of serial communication, it will run on modern to require compact science of code employ the above, let alone use it on the embedded telescopic system. In order to support these many kinds of different storing and Communication architectures, has developed many kinds of API standards for many years. In that call it OpenMP (open multiprocessing) And MPI (information transmission interface) Two standard. MPI is distributed applied information transmission API far and wide in the computing system on a large scale. It can be used in many kinds of distributed storage organization, is suitable for the mobile system too. Each RUNNING hardware can be optimized by oneself, therefore it is high speed. Though MPI is powerful, it is complicated. If bring into play various functions, the memory on the one piece polykaryon is far insufficient, computing cost big to enable the time delay of the storage system too big at the same time.
Though Communication standard developed among more quick Communication API processor is numerous, that none is distributed for the near neighbour (tight coupling) , store compactness, characteristic, restrain the harsh embedded multinuclear system from design. In embedded world, it is symmetric to apply most to the right and wrong per se. Whether many nuclear systems can use the kernel of isomerism in the on-chip same form, or operate different operating systems and become non- symmetrical structure on the kernel of isomorphism, or make the two coexist on the same chip. In conformity with the intersection of opposite direction and many transformation of nuclear system, industry agree abstraction erupt the concept simultaneously, make it express API for use in a series of programming common, simply, effectively, ocularly. This is a aim of a polykaryon association. While writing the norms of embedded many nuclear systems, deal with resource management (kernel, stores, connects, I/O) ,Among kernel communication,and slices of expert for synchronism when state to some extent. Writing API should not be only directed against the single operating system, or simplex SMP operating system. When many nuclear systems of isomerism cross over a plurality of kernels to operate a plurality of operating systems, need to consider the resources that any operating system can’t operate. The intersection of hardware and the intersection of accelerator and the intersection of inoperative and operating system any rely on, run at that time nuclear the intersection of operation and the intersection of system pair and its cross correlation work only. Complexity of this heavier kind of system of the accelerator of the hardware. The alliance has already set about working out API of the information transmission and resource management regarding embedded to distribute basic communication. Inside calls it Communication API (namely CAPI) . The target system of CAPI includes the kernel of multidimensional isomerism, connect on slice, the memorizer, operating system, software development tool, and programming language. CAPI is about writing the norm of API, but not its realization. The members of the alliance can consult it and finish one’s own required processor structure and select to be realized by CAPI of the operating system freely. Though there is MPI and OpenMP industrial standard of programming of multi-processor, but its original goal still only concentrates on large-scale SMP distribution system and specific and particular application (such as scientific computation) . About elasticity, as as other canonial goals restriction of CAPI its. Moreover, compare with application respect, its CAPI is some of generalization even more. As shown in Fig. 1, CAPI takes shape single layer, on it can be the application layer or abstraction layer which the developer constructs. Best for characteristic, communication, move ahead simultaneously, mark with allocation of resources under kernel, by application layer and CAPI layer being directly mutual, stride the call of a series of time consuming operating system. CAPI has a long bunch of unique characteristics and functions supported.
Fig. 1 CAPI takes shape single layer, on it can be the application layer or abstraction layer which the developer constructs. Best for characteristic, communication, move ahead simultaneously, mark with allocation of resources under kernel, by application and CAPI being directly mutual, stride the call of a series of time consuming operating system. What provided is two nuclear situations in the picture.
The work among the balanced multi-processors is born transparently to write the software and think RTOS of a lot of support SMP in future, have avoided and written this part of software. The alliance hopes to lead this kind of convenience into AMP system too, though it is not relaxed to develop this part of software. Develop putting in an position and swiftness of the procedure lain in designing in main challenge of the application software. Programming personnel are devoted to optimizing more during programming, and put in an position fast, do not care about requirements for adaptability of different hardware structures, need and industrial standard of the market,etc.. The change of an ordinary hardware may lead to unite to and increase a lot of kernels, even different processors. Accordingly, will also involve the life cycle of the software. The developer needs to maintain the huge code library and how many generations ‘s products are ever extended evolved. As to the processor of the host computer, if it was quite steady and standardized operating system that used, will contribute to developing the software of reusable and repeatable mapping. But the present focus has already transferred to and occupied the application framework above the operating system. The application framework such as OpenMax of the multimedia, GStreamer and Direct Show have very great help in writing the software. However, most embedded software is operating on the dedicated processor for special function, have not usually accorded with the canonial operating system. Under such situation, shine upon and all turn into a very difficult problem fast. Today, there is inherent parallelism in most embedded application, wait for the programmer to develop. It is easier for them to shine upon SMP structure, and still the challenge so far to AMP. Communication among the process of floating above the surface of water newly (IPC) It is very helpful for the standard to solve this kind of problem, the polykaryon alliance is in course of developing too. It can write out and can give the modified software to the current structural old software in the future, and shift it to AMP. If using CAPI must revise the software, for being easy so as to move, may still need to build up the coupling of the looseness again. CAPI offer transplantation of source code and put in an position, make structural independence and flexible also. Can also even imagine, change CAPI into a framework with these characteristics, is used in the kit EEMBC of the assessment routine.
Fine middleware a society can increase applied interoperability, person who transplant and flexibility to the middleware of news soon. It can be distributed the utility program among a plurality of isomerism processor kernels. It can isolate through the other operating systems when employ the detail of each operating system to many operating systems, reduce the complexity of programming. Realize the canonical form of the message passing middleware, it is to adopt the software storehouse of the middleware. CAPI is an example of using message passing API middleware. Though the importance of CAPI is extremely crucial, it is in the bottom layer of the heap of middlewares, all middlewares on the senior level in the heap are performed based on it then come. Poly-Messenger of PolyCore software is an example of the message passing middleware. After waiting for CAPI to finish, expect to offer one set to possess mapping and put Poly-Messenger CAPI of ability as PolyCore. What it is offered by many nuclear systems is a set of unitary API. After abstracting the assembly with different hardware and with different software again, it will offer from the getting binuclear nuclear high-efficient flexible ability of several hundred. Different embedded application needs different parallel structures. Employ and SoC will be more and more complicated, the software will develop into and include the multi-type algorithmic complicated operating and their coordination between each other. The video decoding algorithm will demand to drive multinuclear ability. A large amount of application will require the multinuclear processor. Among them it is the only choice that a lot of employ and use multinuclear SoC. Already inevitably ground cover of polykaryon alliance involve in the polykaryon and debug the field. Support any embedded processor combined polykaryon and multi-processor system within developing instrument that a lot of producers declare them. Service terminal substantially as including in the extant scheme there are JTAG probes and another end, have a plurality of more development of varying with processor to debug the dedicated adapter. Although they can debug many nuclear systems reluctantly, not overall, it is binuclear and not all right that the system exceeds. Such as to using 16 debugging devices in 16 nuclear systematic imaginations of one. In the plan of the polykaryon alliance, plan to develop a canonial debugging prototype machine and corresponding API, hope the producer can consult unitary many nuclear system debugging devices. In order to meet the upcoming huge polykaryon revolution, the industry must advance the multinuclear ecotope hand in hand. Polykaryon alliance want manufacturer, the intersection of middleware and provider, the intersection of processor and manufacturer, the intersection of EDA and manufacturer of operating system, employ developer, the intersection of OEM and manufacturer and gather one while being other, encourage confidence, strengthen faith, work as one man, draft one accords with common required planning blueprint, guarantee its implementation. The births of the new things, original, the acceleration that is continued. The polykaryon alliance has a firm foundation stone established of the original one, have already set about dealing with the key challenge, with the development of undertaking, the emerging of the heir, shoulder heavy responsibilities, have a bright future! (Liang HeQing is translated from ” Microprocessor Report “)