SU1425671A1 - Device for distributing tasks among processors - Google Patents
Device for distributing tasks among processors Download PDFInfo
- Publication number
- SU1425671A1 SU1425671A1 SU874206413A SU4206413A SU1425671A1 SU 1425671 A1 SU1425671 A1 SU 1425671A1 SU 874206413 A SU874206413 A SU 874206413A SU 4206413 A SU4206413 A SU 4206413A SU 1425671 A1 SU1425671 A1 SU 1425671A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- channel
- inputs
- elements
- output
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
Изобретение относитс к вычислительной технике и может быть использовано при организации вычислительно- го процессора в многопроцессорной :(МПС) или в многомашинной (ММС) йычис :лительной системе,The invention relates to computing and can be used in the organization of a computing processor in a multiprocessor: (MPS) or in a multi-machine (MMS) system:
I Цель изобретени - расширение фун- 1кциональных возможностей устройства 1за счет обеспечени равномерного по |времени распределени задач процес- ICOPOM.I The purpose of the invention is to expand the functional capabilities of the device 1 by ensuring that the tasks of the ICOPOM process are distributed evenly over time.
На чертеже изображено предлагаемое устройство.The drawing shows the proposed device.
.. ..
Устройство Содержит сдвигающие регистры 1, элементы НЕ 2, элементы И 3, элементы И 4,элементы ИЛИ 5, элементы И 6, триггеры 7, триггеры 8 элементы И 9, элементы И 10, элементы ИЛИ 11, схемы 12 сравнени , эле- ченты ИЛИ-НЕ 13, первые элементы НЕ |14, . элементы ИЛИ 15, элемент ИЛИ 16, Ьегистр 17, блок элементов И 18, |с;четчик 19, элемент НЕ 20, сдвигающий Ьегистр 21, блок 22 памйти, счетчик Р, дешифратор 24, блок 25 регистров ринхронизиругощие входы 26,27,28 и 29 устройства, входы 30 кода управлени устройства, вход 31 установки устрой |:тва, выходы 32 устройства. I Работа устройства начинаетс с Приведени в исходное состо ние элементов схемы,Device Contains shift registers 1, elements NOT 2, elements AND 3, elements AND 4, elements OR 5, elements AND 6, triggers 7, triggers 8 elements AND 9, elements AND 10, elements OR 11, comparison circuits 12, elements OR NOT 13, first elements NOT | 14,. elements OR 15, element OR 16, Log 17, block of elements AND 18, | c; counter 19, element NOT 20, shifting Log register 21, block 22 memory, counter P, decoder 24, block 25 of registers rynchronizing inputs 26,27,28 and 29 devices, inputs 30 of the control code of the device, input 31 of the installation of the device |: tva, outputs 32 of the device. The operation of the device begins with the reduction of the initial state of the circuit elements,
: В блок 22 заблаговременно записы- фаютс коды управлени : система диаг йостировани МПС (ММС) выставл ет на $ходы 30 адрес чтени блока 22, кото рьт соответствует числу исправных процессоров, в результате чего в ре- 1 истр 21 записьтаетс рабочий код управлени ; с первого синхронизирующего входа 26 устанавливаютс в нулевое состо ние триггеры 8j с синхронизирующего входа 27 привод тс в нулевое состо ние информационные разр ды регистра 17; привод тс в исходное состо ние (нулевое) счетчики 19 и 23; с входа 29 через элементы И 10 и ИЛИ устанавливаютс в единичное состо ние триггеры 7; с входа 29 подаетс сигнал на сдвигоньй вход регистра 21 управлени , в результате чего на его информационном выходе по вл етс первый разр д кода управлени ; с четвертого синхронизирующего входа 29 подаетс сигнал на счет- ч:ик 23, в результате чего с него считываетс первое кодовое число.: In block 22, control codes are written down in advance: the MOSPD diagnostics system (MMC) sets up to 30 moves 30 the read address of block 22, which corresponds to the number of healthy processors, resulting in a working control code in the register 21; from the first synchronization input 26, the triggers 8j are set to the zero state; from the synchronization input 27, the information bits of the register 17 are reset to the zero state; reset (zero) counters 19 and 23; from input 29, via elements AND 10 and OR, the triggers 7 are set to one; from input 29, a signal is sent to the shift input of control register 21, as a result of which the first bit of the control code appears at its information output; From the fourth clock input 29, a signal is sent to the counter: IR 23, as a result of which the first code number is read from it.
00
5five
5 о 5 o
5five
00
5five
00
5five
дешифраци которого приводит к воз- .буждению первой выходной шины дешифратора 24; с входа 31 в регистры 1 занос тс коды, соответствующие длительности решени задач в МЛС (ММС), таким образом, чтобы нумераци задач соответствовала нумерации регистра 1, количество решаемых задач М,decryption of which leads to excitation of the first output bus of the decoder 24; from input 31 to registers 1, the codes corresponding to the duration of problem solving in MLS (MMS) are entered in such a way that the numbering of the tasks corresponds to the numbering of register 1, the number of tasks M,
Работа устройства осуществл етс в двух режимах: поиска минимального кода времени выполнени .задачи и поиска максимального кода времени выполнени (далее по тексту соответственно минимальный и максимальный код), Количество разр дов кода управлени соответствует числу выполн емых задач на МЛС (ММС), Если МПС содержит Н процессоров и , число кодов управлени равн етс Н-2 (случаи, когда и не рассматриваютс , так как при этом назначение однозначное и не возникает оптимизационной задачи). Таким образом, при фиксированном числе вьшолн емых на МЛС задач , в случае отказов процессоров, возникает Н-2 процедур оптимизации загрузки процессоров по времени выполнени . И поэтому в блоке 22 записываютс Н-2 кодов, считьшание которых происходит при подаче на вход 30 устройства с системы диагностировани (СД) МПС адреса, соответствующего состо нию ПМС (по числу исправных процессоров). Рабочий ход управлени записьшаетс в регистр 21 управлени . При- последовательном считывании с выхода регистра 21 разр дов кода управлени устройство работает в режиме поиска минимального кода или максимального. Если с регистра 21 считываетс О, то устанавливаетс режим поиска минимального кода При этом на выходе элемента НЕ 20 по вл етс единичный сигнал, разрешающий прохождение инверсного кода с регистра 1, через элемент НЕ 2 и на второй вход второго элемента И 3, и далее через второй элемент ШШ 5 на первый элемент И 6. Если с регистра 21 считываетс 1, то устанавливаетс режим поиска максимального кода. При этом подаетс единичный сигнал на третий элемент И 4, разреша тем самым прохождение пр мого кода на первый элемент ИЛК 5.The device operates in two modes: search for the minimum execution time code. Tasks and search for the maximum execution time code (hereinafter referred to as the minimum and maximum code, respectively), the number of bits of the control code corresponds to the number of tasks performed on the MLS (MMS), contains H processors and the number of control codes is H-2 (cases where they are not considered, since the assignment is unique and there is no optimization problem). Thus, with a fixed number of tasks performed on the MLS, in the event of processor failures, H-2 procedures appear to optimize the processor load by execution time. And therefore, in block 22, H-2 codes are written, the matching of which occurs when the device is fed to the device 30 input from the diagnostic system (SD) of the IPU address corresponding to the state of the ICP (according to the number of healthy processors). The control travel is written to control register 21. In a sequential reading from the output of the register of 21 bits of the control code, the device operates in the mode of searching for the minimum code or the maximum one. If O is read from register 21, then the minimum code search mode is set. At the same time, a single signal appears at the output of the element 20 allowing the inverse code to pass from the register 1 through the element 2 and the second input of the second element 3 and then the second element SH 5 at the first element AND 6. If register 1 reads 1, then the search mode of the maximum code is set. In this case, a single signal is fed to the third element 4, thereby permitting the passage of the direct code to the first element of the SLC 5.
Как указывалось, вид кода управлени определ етс количеством исправных процессоров в МПС (MC) и приAs mentioned, the type of control code is determined by the number of healthy processors in the MPS (MC) and
его формировании рассматриваютс - следующие соотношени между числом процессоров и количеством задач М:its formation is considered - the following ratios between the number of processors and the number of tasks M:
М N I ;M N I;
. .
N 2.N 2.
Дл описани алгоритма формировани кодов управлени рассмотрим информационное поле ПЗУ в виде таблицыTo describe the control code generation algorithm, consider the information field of the ROM in the form of a table
Значение каждого разр да строки j (О и 1) соответствует одному из режимов работы устройства. Дл поиска только максимального кода необходимо строку 3 заполнить всеми единицами. Если необходимо работать только в режиме поиска минимального кода, строка j заполн етс нул ми. Дл оптимального распределени задач на процессоры МПС (ММС) код управлени режимами работы необходимо формировать следующим образом:The value of each bit of the string j (O and 1) corresponds to one of the modes of operation of the device. To search only for the maximum code, you must fill in line 3 with all units. If it is necessary to work only in the minimum code search mode, the string j is filled with zeros. In order to optimally distribute tasks to the MPS processors (MMS), the mode control code should be generated as follows:
Случай 1. М Н & .Case 1. M H &.
tt
Определ етс номер i позиции Position number i is determined
строки j, начина с которой записываютс чередующиес нуль и единица (в сторону уменьшени номеров задач)lines j, beginning with which alternating zero and one are written (in the direction of decreasing the numbers of tasks)
i м - (п - J)i m - (n - J)
2.2
Остальные позиции заполн ютс единицами .The remaining positions are filled with units.
Случай 2. Н 2.Case 2. H 2.
Определ етс номер i позиции стро- ки j, начина с которой записываютс чередующиес единица и нуль (в сторону уменьшени номеров задач):The number i of the position of the line j is determined, beginning with which alternating ones and zero are written (in the direction of decreasing the numbers of tasks):
i 2 (п - j).i 2 (n - j).
Остальные позиции заполн ютс нул ми.The remaining positions are filled with zeros.
Случай 3. Н 2.Case 3. H 2.
Начина со старшего номера задачи, в строке проставл ютс чередующиес единица и нуль.Starting with the highest number of the task, alternating ones and zero are put in the line.
. По указанному алгоритму составл ет с таблица записей блока 22 дл одного .. фиксированного числа задач. Таким же образом составл ютс таблицы и дл различного числа решаемых на МПС задач . С учетом вьш1есказанного дл считьтани из блока 22 в регистр 21. According to the indicated algorithm, the table of records of the block 22 is for one. A fixed number of tasks. In the same way, tables are compiled for various numbers of problems solved on the IPU. In view of the above, for reading from block 22 to register 21
1515
10ten
20 5 20 5
зоzo
3535
40 40
4545
00
5five
рабочей строки адрес, подаваемый на вход 30 устройства, должен учитывать число решаемых задач (номер таблицы) . и число исправных процессоров.The operating line address supplied to the device input 30 must take into account the number of tasks to be solved (table number). and the number of healthy processors.
Устройство работает следующим образом .The device works as follows.
При считьшании с регистра 21 первого разр да кода управлени устанав- ливаетс режим поиска минимального или максимального кода путем разрешени прохождени инверсного кода с регистра 1 на первый элемент И 6 через элементы НЕ 2,. И 3, ИЛИ 5 (в случае нулевого первого разр да) или пр мого кода через элементы И 4 и ИЛИ S (в случае единичного первого разр да). Так как в исходном состо нии на выходах всех триггеров 7 присутствует высокий потенциал, то сигнал с выхода триггера старшего разр да (эти триггеры не показаны) регистра 1 ; (i 1,М) через .первый элемент И 6 поступает на вход элемента ИЛИ 16, на выходе которого возникает сигнал,если в сравниваемых разр дах хот бы одного из кодов имеетс единица . Этот сигнал поступает на первые входы каждой схемы 12 сравнени , на выходах которых возникает сигнал сброса соответствующего триггера 7, в том случае, если информаци в сравниваемом разр де совпадает с нулем. С триггера 7 на первый элемент И 6 поступает запрещающий (низкий) потенциал перед началом сравнени следующих разр дов кода (инверсного или пр мого).When reading the control code 21 from the first digit of the control code, the mode of searching for the minimum or maximum code is set by allowing the inverse code to pass from register 1 to the first element AND 6 through the elements NOT 2 ,. And 3, OR 5 (in the case of a zero first bit) or a direct code through the elements AND 4 and OR S (in the case of a single first bit). Since in the initial state at the outputs of all the triggers 7 there is a high potential, the signal from the trigger output of the high bit (these triggers are not shown) of register 1; (i 1, M) through the first element AND 6 enters the input of the element OR 16, at the output of which a signal arises if at least one of the codes has a unit in the compared bits. This signal arrives at the first inputs of each comparison circuit 12, at the outputs of which a reset signal of the corresponding trigger 7 is generated, in the event that the information in the compared bit coincides with zero. From trigger 7, the first element AND 6 receives the inhibitory (low) potential before comparing the next bits of the code (inverse or direct).
После Процедуры сравнени старших разр дов инверсного или пр мого кодов происходит подача импульса сдвига на третий синхронизирующий вход 28 устройстваi в результате чего в сдвигающих регистрах 1 происходит сдвиг кодов на один разр д, и процесс сравнени очередных разр дов продолжаетс , и т.д. до тех пор, пока число таких сдвигов и сравнений не будет равно числу М, о чем свидетельствует сигнал переполнени счетчика 19. Сигнал переполнени счетчика 19 поступает на первьй вход блока элементов И 18, выходы которого подсоединены к входам регистра 17. К моменту по влени сигнала переполнени на выходе счетчика 19 заканчиваетс процесс определени максимального кода (или кодов, если их несколько). Фактически, если устройство работаетAfter the Comparison Procedure of the upper bits of the inverse or direct codes, a shift pulse is applied to the third synchronization input 28 of the device i, as a result of which shift codes 1 shifts the codes by one bit, and the comparison process of the next bits continues, etc. until the number of such shifts and comparisons is equal to the number M, as indicated by the overflow signal of the counter 19. The overflow signal of the counter 19 is fed to the first input of the block And 18, whose outputs are connected to the inputs of the register 17. By the time the signal appears the overflow at the output of the counter 19 ends the process of determining the maximum code (or codes, if there are several of them). In fact, if the device works
в режиме поиска минимального кода, данный, найденный инверсный макси- мальньм код соответствует минимальному коду,- записанному в соответст- вующем регистре 1, В режиме поиска максимального кода это максимальный код. При одновременном, единичном состо нии нескольких триггеров 7 в регистре 17 и на его выходах по в- л етс один единичньй сигнал т.е. предпочтение отдаетс той задаче, пор дковый номер которой наибольший среди задач, имеющих одинаковое требуемое врем дл решени . Это дос- тигаетс за счет наличи элементов 13-15.in the minimum code search mode, the given, found inverse maximum code corresponds to the minimum code - recorded in the corresponding register 1, In the maximum code search mode, this is the maximum code. At the same time, a single state of several triggers 7 in register 17 and at its outputs one single signal is input, i.e. preference is given to the task, the sequence number of which is the largest among those having the same required time to solve. This is achieved by the presence of elements 13-15.
Таким образом, позиционный код номзра минимального или максимального кода фиксируетс в регистре 17 и подаетс на информационные входы блока 25 регистров, а также обеспечивает .сброс соответствующего второго триггера 8 в нулевое состо- I ние. . Thus, the position code of the minimum or maximum code is recorded in register 17 and fed to the information inputs of register block 25, and also ensures that the corresponding second trigger 8 is reset to the zero state I. .
При приведении устройства в исход lioe состо ние на выходе счетчика 23 устанавливаетс код, обеспечивающий I после дешифрации на дешифраторе 24 iподачу сигнала разрешени записи ко- да в первый регистр блока 25 регистров . В дальнейшем при каждой подаче :сигнала на вход 29 на выходе счетчи- JKa устанавливаетс такой код, кото- |рый обеспечивает активизацию второго :третьего, ... и т.д. выходов дешиф- ;ратора 24. В результате чего после- |дующие позиционные коды номеров зада ;соответственно занос тс во второй, ;третий, ... регистры блока 25 регистров .When the device is reset to lioe, the state at the output of the counter 23 is set to provide I, after decrypting on the decoder 24, the i signal of the code write enable signal to the first register of the register block 25. In the future, each time: the signal to the input 29 at the output of the counter JKa is set such a code, which ensures the activation of the second: the third, ..., etc. outputs decipher-; rator 24. As a result, the subsequent | subsequent position codes of numbers of the task; respectively, are entered in the second,; third, ... registers of the block 25 of registers.
После занесени в регистр блока 2 регистров позиционного кода номера выбранной задачи по входу 27 подаетс сигнал сброса регистру 17 в исходное нулевое состо ние, по входу 29 сигнал установки тех триггеров 7 в единичное состо ние, в канал которых триггер 8 еще находитс в единичном состо нии (не было выбора соответствующей задачи) . С входа 29 син-г хронизирующим сигналом происходит сдвиг на один разр д кода управлени в регистре 21 (установка следующего режима поиска) и установка на счетчике 23 следующего кода, в результате чего на выходе дешифратора 24 активизируетс очередна шина, с которой поступает сигнал разрешени записи вAfter block 2 of the position code registers in the register of the selected task number, input 27 sends a reset signal to register 17 to the initial zero state, and input 29 sets the trigger 7 to single state, to which channel trigger 8 is still in single state (there was no choice of the corresponding task). Starting from the input 29 of the sine-g synchronizing signal, the control code is shifted by one bit in the register 21 (setting the next search mode) and the next code is set on the counter 23, as a result of which the next bus is activated at the output of the decoder 24, from which the write enable signal is received at
0 50 5
о about
5 five
5five
00
5five
00
следующий регистр блока 25 регистров Далее по входу 28 подает-с сери сигналов сдвига, в результате чего обеспечиваетс процесс определени номера очередной задачи дл записи в блок 25 регистров и последующего назначени . Так как триггер 7 канала, где произошел выбор задачи, сигналом с входа 29 переведен в нулевое состо ние (через элементы И 10 и ИЛИ 11), то код задачи, записанный в соответствующем регистре 1, не участвует в дальнейшем процессе сравнени . Таким образом, в результате работы предлагаемого устройства в блоке 25 регистров записаны позиционные коды номеров всех задач, предназначенных дл выполнени на МПС, времена выполнени которых (минимальное или максимальное ) чередуютс в пор дке следовани нулей и единиц в коде управлени . При выборе первого максимального кода, максимальным становитс еле- .дующий за ним код. Аналогично и дл минимального кода. Зна пор док, в котором записаны коды номеров задач, и име ввиду, что они также записаны в блоке 25 регистров в виде удобном дл назначени , установим несложньй алгоритм распределени задач между процессорами, который может быть реализован процессором управлени МПС. Считьшание кодов номеров выбранных задач осуществл етс с выходов 32 устройства.the next register of register 25 block Next, at input 28, supplies a series of shift signals, as a result of which a process of determining the number of the next task is provided for recording in register block 25 and subsequent assignment. Since the trigger 7 of the channel, where the task was selected, was transferred to the zero state by the signal from input 29 (through elements AND 10 and OR 11), the task code recorded in the corresponding register 1 does not participate in the further comparison process. Thus, as a result of the operation of the proposed device, in block 25 of registers position codes of numbers of all tasks intended for execution on the MPS are recorded, the execution times of which (minimum or maximum) alternate in the order of zeroes and ones in the control code. When choosing the first maximum code, the code that follows it becomes the maximum. Similarly for the minimum code. The order in which the task number codes are written, and having in mind that they are also recorded in block 25 of registers as convenient for assignment, we will establish a simple algorithm for distributing tasks among processors, which can be implemented by the MSC control processor. The reading of the number codes of the selected tasks is carried out from the outputs 32 of the device.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU874206413A SU1425671A1 (en) | 1987-03-06 | 1987-03-06 | Device for distributing tasks among processors |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU874206413A SU1425671A1 (en) | 1987-03-06 | 1987-03-06 | Device for distributing tasks among processors |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1425671A1 true SU1425671A1 (en) | 1988-09-23 |
Family
ID=21289417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU874206413A SU1425671A1 (en) | 1987-03-06 | 1987-03-06 | Device for distributing tasks among processors |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1425671A1 (en) |
-
1987
- 1987-03-06 SU SU874206413A patent/SU1425671A1/en active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство СССР №620976, кл. G 06 F 7/02, 1977. Авторское свидетельство СССР № 966697, кл. G 06 F 9/46, 1981. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
SU1425671A1 (en) | Device for distributing tasks among processors | |
SU868768A1 (en) | System for solving mathematical physics problems | |
SU798853A1 (en) | Processor with reconfiguration | |
SU1188728A1 (en) | Device for implementing boolean functions | |
SU898431A1 (en) | Microprogramme-control device | |
SU1513448A1 (en) | Double-level device for controlling microcommand memory | |
SU802963A1 (en) | Microprogramme-control device | |
SU1195364A1 (en) | Microprocessor | |
SU1661762A1 (en) | Microprogramming control device | |
SU602947A1 (en) | Microprogramme-control device | |
SU1259270A1 (en) | Device for checking digital units | |
SU1231494A2 (en) | Device for generating test sequences | |
SU1467799A2 (en) | Device for selecting information channels | |
SU1418715A1 (en) | Variable priority device | |
SU949719A1 (en) | Shifting device | |
SU1451701A1 (en) | Majority microprocessor device | |
SU723570A1 (en) | Arrangement for shifting | |
SU1338064A1 (en) | Linear counter | |
SU494745A1 (en) | Device for the synthesis of multi-cycle scheme | |
SU1173414A1 (en) | Program control device | |
SU651489A1 (en) | Arrangement for selecting information channels | |
SU1649531A1 (en) | Number searcher | |
SU1336248A1 (en) | Encoder | |
SU1290324A1 (en) | Device for distributing jobs to processors | |
SU1233155A1 (en) | Microprogram control device with check |