CN109815372A - Scrypt algorithm workload proving method and device - Google Patents

Scrypt algorithm workload proving method and device Download PDF

Info

Publication number
CN109815372A
CN109815372A CN201910068396.6A CN201910068396A CN109815372A CN 109815372 A CN109815372 A CN 109815372A CN 201910068396 A CN201910068396 A CN 201910068396A CN 109815372 A CN109815372 A CN 109815372A
Authority
CN
China
Prior art keywords
data
task
stored
current
cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910068396.6A
Other languages
Chinese (zh)
Other versions
CN109815372B (en
Inventor
徐英韬
张楠赓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Canaan Jiesi Information Technology Co ltd
Original Assignee
Hangzhou Canaan Creative Information Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Canaan Creative Information Technology Ltd filed Critical Hangzhou Canaan Creative Information Technology Ltd
Priority to CN201910068396.6A priority Critical patent/CN109815372B/en
Publication of CN109815372A publication Critical patent/CN109815372A/en
Application granted granted Critical
Publication of CN109815372B publication Critical patent/CN109815372B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种Scrypt算法工作量证明方法及装置,所述方法包括多个工作量证明的任务,所述任务包括第一阶段和第二阶段,所述方法包括:在各任务的第一阶段,在第一数据中抽取部分数据作为存储数据进行存储,存储数据的数量少于第一数据的数量;在各任务的第二阶段,将各任务分别对应至第一周期内不同的第一时隙,在与目标任务对应的第一时隙内,根据目标任务的存储数据确定对应的第一数据,根据对应的第一数据生成第二数据,所述目标任务包括任一任务,所述第一周期包括多个第一时隙,第一时隙的数量大于或等于任务的数量。本公开实施例可以节省存储空间,提高多任务的执行效率。

The present disclosure relates to a Scrypt algorithm workload proof method and device, the method includes a plurality of workload proof tasks, the tasks include a first stage and a second stage, and the method includes: in the first stage of each task , extract part of the data from the first data as stored data for storage, and the number of stored data is less than the number of first data; in the second stage of each task, each task is corresponding to different first time in the first cycle. slot, in the first time slot corresponding to the target task, determine the corresponding first data according to the stored data of the target task, and generate the second data according to the corresponding first data, the target task includes any task, the first data A cycle includes a plurality of first time slots, and the number of the first time slots is greater than or equal to the number of tasks. The embodiments of the present disclosure can save storage space and improve the execution efficiency of multitasking.

Description

Scrypt algorithm proof of work method and device
Technical field
This disclosure relates to block chain technical field more particularly to a kind of Scrypt algorithm proof of work method and device.
Background technique
In the proof of work method of block chain technology, the first stage of Scrypt algorithm proof of work method, which generates, to be set First data of fixed number amount, and use the first data to generate the second data at random in second stage.The quantity of first data is more, Biggish memory space is occupied, so that the volume of the realization chip of Scrypt algorithm proof of work method is larger, is unfavorable for Reduce the volume of relevant device.
Summary of the invention
In view of this, the present disclosure proposes a kind of Scrypt algorithm proof of work method and devices.To solve The problem of Scrypt algorithm proof of work method occupancy memory space is big, can not reduce related chip volume.
According to the one side of the disclosure, a kind of Scrypt algorithm proof of work method is provided, the method includes more The task of a proof of work, the task include first stage and second stage, which comprises
In the first stage of each task, extraction section data are stored as storing data in the first data, described The quantity of storing data is less than the quantity of first data;
In the second stage of each task, each task is respectively corresponding to the first time slot different in the period 1, with mesh In corresponding first time slot of mark task, corresponding first data are determined according to the storing data of the goal task, according to described Corresponding first data generate the second data, and the goal task includes any task, and the period 1 includes multiple First time slot, the quantity of first time slot are greater than or equal to the quantity of the task.
In one possible implementation, in the first stage of each task, extraction section data are made in the first data It is stored for storing data, comprising:
In the first stage of each task, each task is respectively corresponding to the second time slot different in second round,
In the second time slot corresponding with the goal task, the first data, and the extraction section in the first data are generated Memory is written as storing data in data, and the second round includes multiple second time slots, and the quantity of second time slot is big In or equal to the task quantity.
In one possible implementation, corresponding first data are determined according to the storing data of the goal task, The second data are generated according to corresponding first data, comprising:
The first data corresponding with current second data are searched in the storing data of the goal task;
When the first data corresponding with current second data can not be found in the storing data, according to closest Storing data, determining the first data corresponding with current second data;
According to current corresponding first data of second data and current second data, obtain described current Next second data of two data.
In one possible implementation, first data are ordered sequence, the extracting part score in the first data It is stored according to as storing data, comprising:
The storage address of the storing data is determined according to the sequence number of the storing data;
The first data corresponding with current second data are searched in the storing data of the goal task, comprising:
Index address is generated according to the data preset in numerical digit in current second data of the goal task, described The index address is searched in storage address, and the first data corresponding with current second data are determined according to lookup result.
In one possible implementation, according to immediate storing data, determining and current second data pair The first data answered, comprising:
Determine the difference between immediate storage address and the index address;
According to the number of iterations that the difference determines, the storing data in immediate storage address is iterated fortune It calculates, obtains the first data corresponding with the index address.
In one possible implementation, extraction section data are stored as storing data in the first data, It includes any of the following:
Extraction storing data is spaced according to preset extraction in the first data to be stored;
Storing data is extracted according to preset sequence number range in the first data to be stored;
The storing data that preset quantity is randomly selected in the first data is stored.
In one possible implementation, the storing data of each task is stored in the different memory spaces of memory, institute The quantity for stating memory space is greater than or equal to the quantity of the task.
In one possible implementation, with the second round in preceding, the described period 1 in the rear execution formed Period executes each task.
In one possible implementation, the period 1 further includes free timeslot, the quantity of the free timeslot Or duration is determined according to the delay of the memory.
In one possible implementation, the period 1 and the second round are parallel.
In one possible implementation, the method also includes:
When at least one task execution in the multiple task finishes, when being finished for task is corresponding first Gap is distributed to new task.
According to another aspect of the present disclosure, a kind of Scrypt algorithm proof of work device is provided, described device is used for The task of multiple proof of work is executed, the task includes first stage and second stage, and described device includes:
Abstraction module, for the first stage in each task, extraction section data are as storing data in the first data It is stored, the quantity of the storing data is less than the quantity of first data;
Each task is respectively corresponding in the period 1 by period 1 execution module for the second stage in each task The first different time slot, in the first time slot corresponding with goal task, according to determining pair of the storing data of the goal task The first data answered generate the second data according to corresponding first data, and the goal task includes any task, The period 1 includes multiple first time slots, and the quantity of first time slot is greater than or equal to the quantity of the task.
In one possible implementation, the abstraction module, comprising:
Each task is respectively corresponding to second round for the first stage in each task by second round implementation sub-module Interior the second different time slot generates the first data, and in the first data in the second time slot corresponding with the goal task Memory is written as storing data in extraction section data, and the second round includes multiple second time slots, second time slot Quantity be greater than or equal to the task quantity.
In one possible implementation, the period 1 execution module, comprising:
Corresponding data searches submodule, for searching in the storing data of the goal task and current second number According to corresponding first data;
Corresponding data determines submodule, for corresponding with current second data when that can not find in the storing data The first data when, according to immediate storing data, determining the first data corresponding with current second data;
Second data acquisition submodule, for according to the first data corresponding with current second data and described current Second data obtain next second data of current second data.
In one possible implementation, first data are ordered sequence, the abstraction module, comprising:
Storage address submodule, for determining according to the sequence number of the storing data storage of the storing data Location;
The corresponding data searches submodule, is used for:
Index address is generated according to the data preset in numerical digit in current second data of the goal task, described The index address is searched in storage address, and the first data corresponding with current second data are determined according to lookup result.
In one possible implementation, the corresponding data determines submodule, is used for:
Determine the difference between immediate storage address and the index address;
According to the number of iterations that the difference determines, the storing data in immediate storage address is iterated fortune It calculates, obtains the first data corresponding with the index address.
In one possible implementation, extraction section data are stored as storing data in the first data, It includes any of the following:
Extraction storing data is spaced according to preset extraction in the first data to be stored;
Storing data is extracted according to preset sequence number range in the first data to be stored;
The storing data that preset quantity is randomly selected in the first data is stored.
In one possible implementation, the storing data of each task is stored in the different memory spaces of memory, institute The quantity for stating memory space is greater than or equal to the quantity of the task.
In one possible implementation, with the second round in preceding, the described period 1 in the rear execution formed Period executes each task.
In one possible implementation, the period 1 further includes free timeslot, the quantity of the free timeslot Or duration is determined according to the delay of the memory.
In one possible implementation, the period 1 and the second round are parallel.
In the embodiments of the present disclosure, in the first stage of Scrypt algorithm proof of work, the extracting part in the first data Divided data is stored as storing data, can save memory space.Multiple tasks are respectively corresponding in the period 1 not The first same time slot, generates the second data in the first time slot corresponding with each task, the execution efficiency of multitask can be improved.
According to below with reference to the accompanying drawings to detailed description of illustrative embodiments, the other feature and aspect of the disclosure will become It is clear.
Detailed description of the invention
Comprising in the description and constituting the attached drawing of part of specification and specification together illustrates the disclosure Exemplary embodiment, feature and aspect, and for explaining the principles of this disclosure.
Fig. 1 shows the flow chart of the Scrypt algorithm proof of work method according to one embodiment of the disclosure;
Fig. 2 shows the flow charts according to the Scrypt algorithm proof of work method of one embodiment of the disclosure;
Fig. 3 shows the flow chart of the Scrypt algorithm proof of work method according to one embodiment of the disclosure;
Fig. 4 shows the block diagram of the Scrypt algorithm proof of work device according to one embodiment of the disclosure.
Specific embodiment
Various exemplary embodiments, feature and the aspect of the disclosure are described in detail below with reference to attached drawing.It is identical in attached drawing Appended drawing reference indicate element functionally identical or similar.Although the various aspects of embodiment are shown in the attached drawings, remove It non-specifically points out, it is not necessary to attached drawing drawn to scale.
Dedicated word " exemplary " means " being used as example, embodiment or illustrative " herein.Here as " exemplary " Illustrated any embodiment should not necessarily be construed as preferred or advantageous over other embodiments.
In addition, giving numerous details in specific embodiment below to better illustrate the disclosure. It will be appreciated by those skilled in the art that without certain details, the disclosure equally be can be implemented.In some instances, for Method, means, element and circuit well known to those skilled in the art are not described in detail, in order to highlight the purport of the disclosure.
Fig. 1 shows the flow chart of the Scrypt algorithm proof of work method according to one embodiment of the disclosure, such as Fig. 1 institute Show, method includes:
Step S10, the first stage of each task, extraction section data are deposited as storing data in the first data Storage, the quantity of storing data are less than the quantity of the first data.
In one possible implementation, in virtual digit coin technology, proof of work is to realize system conformance Important mechanisms.Proof of work requires participant to pay a certain amount of computing resource, to prove oneself to complete certain work It measures.In the Scrypt algorithm of virtual digit coin technology, proof of work includes first stage and second stage.In the first rank Section obtains multiple first data after random number being carried out operation using HASH function.There is cascade between each first data Relationship, can be with composition sequence.For example, in the first stage, first can be obtained according to random number 1 using after HASH functional operation A first data.Second the first data can be obtained by first the first data using after HASH functional operation.It can use HASH function obtains the first data of preset quantity after carrying out multiple operation.Each first data can be stored.To save Memory space, the present embodiment extraction section data can be stored as storing data in the first data, can save and deposit Store up space.
In one possible implementation, the quantity of storing data is less than the quantity of the first data, due to the second data It needs to use the first data at random.When the first data needed for calculating the second data are not stored, need according to storage number According to calculating to obtaining, to expend certain computing resource, computational efficiency is reduced.It can be according to saving memory space and guarantee Two aspect demands of computational efficiency, determine the quantity of storing data.
In one possible implementation, extraction section data are stored as storing data in the first data, It includes any of the following:
Extraction storing data is spaced according to preset extraction in the first data to be stored;
Storing data is extracted according to preset sequence number range in the first data to be stored;
The storing data that preset quantity is randomly selected in the first data is stored.
In one possible implementation, extraction interval can be preset.For example, default interval of extracting can be three the One data.First the first data, the 4th the first data, the 8th the first data ... can be then extracted, directly It is stored to the last one storing data is drawn into.In the calculating process of the second data, the first data can be made by random Use, according to extract interval be drawn into column are sought in storage, extraction storing data that can be average in the first data, so that depositing The probability used for storing up data is suitable.
In one possible implementation, there is cascade connection between each first data, each first data can form one A sequence.Sequence number between each first data can be determined according to the genesis sequence of the first data.It can be in the first data Storing data is extracted according to preset sequence number range.For example, sharing 1024 the first data, 1-50,100- can be extracted 150, the first data of the sequence number range of 200-250 ... are as storing data.It can be extracted according to multiple sequence number ranges Storing data can also extract storing data according to a sequence number range.The quantity of the unlimited sequence number range of the disclosure, The length of each sequence number range is not limited.
In one possible implementation, the storing data that preset quantity can be randomly selected in the first data carries out Storage.For example, 256 storing datas can be randomly selected by sharing 1024 the first data, first, the 5th can be randomly selected A, the 15th the first data ... are as storing data.
Step S20, in the second stage of each task, when each task is respectively corresponding to different first in the period 1 Gap determines corresponding first data according to the storing data of goal task in the first time slot corresponding with goal task, according to Corresponding first data generate the second data, and goal task includes any task, and the period 1 includes multiple first time slots, and first The quantity of time slot is greater than or equal to the quantity of task.
In one possible implementation, in second stage, HASH letter can be utilized according to the first data and random number Number carries out operation and obtains the second data.For example, in second stage, can according to the last one first data or according to random number 2, Operation is carried out using HASH function, obtains first the second data.First the second data can be carried out using HASH function Operation obtains the operation result of first the second data, can determine the first data corresponding with first the second data, can be with The operation result of the first data corresponding with first the second data and first the second data is subjected to XOR operation, obtains the Two the second data.Second data can be subjected to operation using HASH function, obtain the operation result of second the second data, Can determine first data corresponding with second the second data, can will it is corresponding with second the second data first number XOR operation is carried out according to the operation result with second the second data, obtains the second data of third.And so on, until obtaining Second data of preset quantity.
It in one possible implementation, can be according to the data and preset set in current second data in numerical digit Data conversion rule obtains the first data corresponding with current second data.Data conversion rule can be determined according to demand, this It is open not limit this.It, can be according to any first data, by calculating due to having cascade connection between each first data To the first data corresponding with any second data.The first number corresponding with each second data can be obtained according to storing data According to.
In one possible implementation, there is cascade connection between the second data.Using in the embodiment of the present disclosure Method is calculated the last one second data, and the last one second data being calculated is exported to Scrypt algorithm Other calculation steps of middle proof of work part, to complete proof of work in Scrypt algorithm, those skilled in the art can With understanding, specific second data export other steps into Scrypt algorithm, with the Scrypt algorithm workload of completion The associated description of proof can refer to the prior art.
In one possible implementation, in the second stage of each task, corresponding with current second data the is determined It is not storing data there are corresponding first data during one data, needs to obtain and work as according to after storing data operation Corresponding first data of preceding second data, obtain next in the first data corresponding with current second data obtained according to operation The case where a second data.In each task, hit rate of corresponding first data of current second data in storing data is different, The number of iterations for obtaining corresponding first data according to storing data operation is different, and operation time is also different, leads to each task Duration needed for second stage is different.In traditional proof of work method, when multiple proof of work task simultaneously When execution, after needing to wait current second data of all tasks to generate, the generating process of next second data just can be carried out, The execution efficiency of each task is low.
In one possible implementation, in the second stage of each task, each task can be respectively corresponding to first The first different time slot in period, period 1 include multiple first time slots, and the quantity of the first time slot is greater than or equal to task Quantity.For example, the period 1 is T1, T1 includes 10 the first time slots, can respectively correspond 10 different tasks, first the One time slot corresponds to task 1, and second the first time slot corresponds to task 2, and the first time slot of third corresponds to task 3 ....At first Within the scope of the corresponding duration of first time slot, the second stage of task 1 is executed, in the corresponding duration range of second the first time slot It is interior, the second stage of task 2 is executed, and so on, until executing next period 1 after the period 1 is finished.
In one possible implementation, it after at least one task execution in multiple tasks, can will hold Corresponding first time slot allocation of task that finishes of row is to new task.For example, task 3 is finished in 10 tasks.It can incite somebody to action The first time slot allocation of third corresponding with task 3 is to new task 11, to improve multitask execution efficiency.
In the present embodiment, in the first stage of Scrypt algorithm proof of work, the extracting part score in the first data It is stored according to as storing data, memory space can be saved.Multiple tasks are respectively corresponding to different in the period 1 First time slot generates the second data in the first time slot corresponding with each task, the execution efficiency of multitask can be improved.
Fig. 2 shows the flow charts according to the Scrypt algorithm proof of work method of one embodiment of the disclosure, such as Fig. 2 institute Show, method includes: step S11, step S20, and wherein step S20 can refer to associated description in above-mentioned Fig. 1, and step S11 includes:
Step S11, in the first stage of each task, when each task is respectively corresponding to different second in second round Gap generates the first data in the second time slot corresponding with goal task, and the conduct of extraction section data is deposited in the first data It stores up data and memory is written, second round includes multiple second time slots, and the quantity of the second time slot is greater than or equal to the quantity of task.
In one possible implementation, when the difference second that each task can be respectively corresponding in second round Gap is in corresponding second time slot of goal task, the first stage of performance objective task, generates the first data, and first Memory is written as storing data in extraction section data in data.It, will since the execution duration of each task second stage is different After each task is respectively corresponding to the period 1, after the completion of one of task, the first corresponding time slot can be discharged, and The first time slot released is used for new task.Correspondingly, can will be corresponding in second round corresponding with the task of completion The second time slot also discharge, and the second time slot released is also distributed to new task, to improve the execution efficiency of multitask.
In one possible implementation, each task period 1 corresponding first time slot serial number, can with The serial number of corresponding second time slot is identical or different in second round.
In the present embodiment, in the first stage of each task, each task is respectively corresponding to different in second round Two time slots generate the first data in the second time slot corresponding with goal task, and extraction section data are made in the first data Memory is written for storing data.By the first stage of each task, also completes, can further mention in corresponding first time slot The execution efficiency of high multitask.
Fig. 3 shows the flow chart of the Scrypt algorithm proof of work method according to one embodiment of the disclosure, such as Fig. 3 institute Show, method includes: step S10, step S21, step S22, step S23, and wherein step S10 can refer to correlation in above-mentioned Fig. 1 and retouch It states, step S21, step S22 and step S23 include:
Step S21 searches the first data corresponding with current second data in the storing data of goal task.
In one possible implementation, storing data is the first data of part.Corresponding with current second data One data may be storing data, it is also possible to not be storing data.When the first data corresponding with current second data are storage When data, the calculating of current second data is used for after can extracting in storing data.
Step S22, when the first data corresponding with current second data can not be found in storing data, according to most Close storing data determines the first data corresponding with current second data.
In one possible implementation, when corresponding with current second data can not be found in storing data , can be according to immediate storing data, after being calculated using HASH function when one data, determining and current second data pair The first data answered.For example, the Serial No. 14 of the first data corresponding with current second data, each first number in storing data According to sequence number be respectively 1,6,11,16 ... etc..It can be utilized according to the 16th the first data closest to sequence number 14 HASH function carries out cascaded computation, obtains the first data of Serial No. 14 corresponding with current second data.
In one possible implementation, sequence number can be less than the first data corresponding with current second data Immediate storing data in sequence number, is determined as immediate storing data.For example, can in the sequence number less than 14, According to the first data of immediate Serial No. 11, cascaded computation is carried out using HASH function, is obtained and current second data First data of corresponding Serial No. 14.
Step S23 obtains current second number according to the first data corresponding with current second data and current second data According to next second data.
In one possible implementation, current second data can be subjected to operation using HASH function and obtains operation As a result, the first data corresponding with current second data and operation result can be carried out XOR operation, current second number is obtained According to next second data.
In the present embodiment, when the first data corresponding with current second data can not be found in each storing data When, according to immediate storing data, determine the first data corresponding with current second data, and according to current second data Corresponding first data and current second data obtain next second data of current second data.Second data can root It is calculated according to storing data, memory space needed for reducing the first data.
In one possible implementation, the first data are ordered sequence, step S10 in method, comprising:
The storage address of storing data is determined according to the sequence number of storing data.
In one possible implementation, the sequence number of storing data can be determined according to the sequence number of the first data. For example, when the first data of Serial No. 1,10,15,20 are as storing data, the sequence number of storing data is also 1,10, 15,20.It can be using the sequence number of storing data as the storage address of storing data.The storage address of i.e. each storing data be 1, 10、15、20。
Step S21, comprising: generate index ground according to the data preset in numerical digit in current second data of goal task Index address is searched in location in storage address, determines the first data corresponding with current second data according to lookup result.
It in one possible implementation, can be the truth of a matter with 2, to preset the data in numerical digit in current second data For index, the index address of current second data is generated.For example, the quantity of the first data is 1024.It can be the truth of a matter with 2, Data using in the second data in last 10 numerical digits obtain 1024 as a result, 1024 first numbers can be corresponded to as index According to.Quantity and the position of default numerical digit can be determined according to demand.
In one possible implementation, index address can be searched in storage address.If in storage address Index address is found, the storing data in storage address identical with index address can be determined as and current second number According to corresponding first data.It, can be in the storage for being less than index address if not finding index address in storage address In address, lookup and the storing data in the immediate storage address of index address obtain and current second by cascade clearing Corresponding first data of data.For example, index address is 14, and storage address 1,5,10,15, it can be 10 according to storage address Storing data, by cascaded computation obtain storage address be 14 the first data.
In the present embodiment, the storage address that storing data is determined according to the sequence number of storing data, according to current second The data preset in numerical digit in data generate index address, and index address is searched in storage address, are determined according to lookup result The first data corresponding with current second data.By storage address and index address, can make and current second data pair The search procedure for the first data answered is simple, reliable.
In one possible implementation, according to immediate storing data, determination is corresponding with current second data First data, comprising:
Determine the difference between immediate storage address and index address.
According to the number of iterations that difference determines, the storing data in immediate storage address is iterated operation, is obtained To the first data corresponding with index address.
In one possible implementation, can be in the storage address for being less than index address, determining and index address Immediate storage address.The difference between immediate storage address and index address can be calculated.For example, index address is 14, the storage address of each storing data is 1,5,10,15,20 ....Storage address 10 can be determined as immediate storage Address determines that difference is 14-10=4.
In one possible implementation, due to having cascade connection between the first data.It can be according to difference, to most Storing data in close storage address is iterated calculating, obtains the first data corresponding with index address.For example, difference It is 4, the storing data in the storage address of most proximity can be subjected to four interative computations using HASH function, obtains and rope Draw corresponding first data in address.
In this embodiment, the difference between immediate storage address and index address can be determined;It is determined according to difference The number of iterations, the storing data in immediate storage address is iterated operation, obtains corresponding with index address One data.The number of iterations is determined according to difference, is calculated according to storing data with can be convenient corresponding with current second data The first data.
In one possible implementation, method further include:
The storing data of each task is stored in the different memory spaces of memory, and the quantity of memory space, which is greater than or equal to, appoints The quantity of business.
In one possible implementation, memory can be divided into different memory spaces.It can be according to task Quantity determine the quantity of memory space.For example, corresponding to 10 tasks, memory can be divided into 10 memory spaces, The corresponding task of each memory space.Storing data can be stored in corresponding memory space by each task, and corresponding Storing data is extracted in memory space, and the second data are calculated.
In the present embodiment, by the way that memory access to be divided into different memory spaces, each task is in corresponding memory space The read-write for carrying out data, can be improved data read-write efficiency, improves the execution efficiency of multitask.
In one possible implementation, it is executed in preceding, second round in the rear execution period formed with the period 1 Each task.
In one possible implementation, for executing the Scrypt algorithm proof of work method of the embodiment of the present disclosure Chip, can be read-only in synchronization or only write.When the method in the embodiment of the present disclosure be applied to synchronization it is read-only or When the chip only write, each task can will be executed in the rear execution period formed in the preceding, period 1 with second round.
For example, a length of T2 when second round, when period 1 a length of T1, be the duration for executing the period with T3=T1+T2.It holds Period 1 T1 is executed after first carrying out second round T2 in the row period.Each task is successively executed to execute cycle T 3, in T3 In T2 duration, the first stage of each task is executed.In T1 duration in T3, the second stage of each task is executed.
In the present embodiment, each task is executed in rear execution period for forming in the preceding, period 1 with second round, it can be with Meet synchronization is read-only or the use environment of chip that only write, improves the applicability of the embodiment of the present disclosure.
In one possible implementation, the period 1 further includes free timeslot, the quantity or duration root of free timeslot It is determined according to the delay of memory.
In one possible implementation, since the time-consuming of the second stage of each task is longer than first stage, first week Interim can also include free timeslot.The duration of period 1 including free timeslot can be longer than the duration of second round.It is empty The quantity or duration of idle gap can be determined according to the lag characteristic of memory.Free timeslot can be used for corresponding to each task Duration needed for computing overhead enables the first time slot in the period 1 to be aligned with each task.
In the present embodiment, the period 1 can also include free timeslot.Free timeslot is used to correspond to the operation of each task Each first time slot in period 1 is aligned with each task, improves the execution efficiency of each task by duration needed for expense.
In one possible implementation, period 1 and second round are parallel.
In one possible implementation, for executing the Scrypt algorithm proof of work method of the embodiment of the present disclosure Chip, can be read while write in synchronization.Method in the embodiment of the present disclosure is applied to read simultaneously in synchronization When the chip write, the period 1 can be parallel with second round.
In the present embodiment, period 1 and second round can satisfy the core that can be read while write in synchronization parallel The use environment of piece improves the applicability of the embodiment of the present disclosure.
Fig. 4 shows the block diagram of the Scrypt algorithm proof of work device according to one embodiment of the disclosure, as shown in figure 4, Device is used to execute the task of multiple proof of work, and task includes first stage and second stage, and device includes:
Abstraction module 10, for the first stage in each task, extraction section data are as storage number in the first data According to being stored, the quantity of storing data is less than the quantity of the first data;
Each task is respectively corresponding to the period 1 for the second stage in each task by period 1 execution module 20 Interior the first different time slot is determined according to the storing data of goal task and is corresponded in the first time slot corresponding with goal task The first data, generate the second data according to corresponding first data, goal task includes any task, and the period 1 includes more A first time slot, the quantity of the first time slot are greater than or equal to the quantity of task.
In one possible implementation, abstraction module 10, comprising:
Each task is respectively corresponding to second round for the first stage in each task by second round implementation sub-module Interior the second different time slot generates the first data, and extract in the first data in the second time slot corresponding with goal task Memory is written as storing data in partial data, and second round includes multiple second time slots, the quantity of the second time slot be greater than or Equal to the quantity of task.
In one possible implementation, period 1 execution module 20, comprising:
Corresponding data searches submodule, corresponding with current second data for searching in the storing data of goal task First data;
Corresponding data determines submodule, for when can not find corresponding with current second data the in storing data When one data, according to immediate storing data, the first data corresponding with current second data are determined;
Second data acquisition submodule, for according to the first data corresponding with current second data and current second number According to obtaining next second data of current second data.
In one possible implementation, the first data are ordered sequence, abstraction module 10, comprising:
Storage address submodule determines the storage address of storing data for the sequence number according to storing data;
Corresponding data searches submodule, is used for:
Index address is generated according to the data preset in numerical digit in current second data of goal task, in storage address Middle lookup index address determines the first data corresponding with current second data according to lookup result.
In one possible implementation, corresponding data determines submodule, is used for:
Determine the difference between immediate storage address and index address;
According to the number of iterations that difference determines, the storing data in immediate storage address is iterated operation, is obtained To the first data corresponding with index address.
In one possible implementation, extraction section data are stored as storing data in the first data, It includes any of the following:
Extraction storing data is spaced according to preset extraction in the first data to be stored;
Storing data is extracted according to preset sequence number range in the first data to be stored;
The storing data that preset quantity is randomly selected in the first data is stored.
In one possible implementation, the storing data of each task is stored in the different memory spaces of memory, deposits The quantity for storing up space is greater than or equal to the quantity of task.
In one possible implementation, it is executed in the preceding, period 1 in the rear execution period formed with second round Each task.
In one possible implementation, the period 1 further includes free timeslot, the quantity or duration root of free timeslot It is determined according to the delay of memory.
In one possible implementation, period 1 and second round are parallel.
In one possible implementation, device further include: distribution module, for when at least one of multiple tasks When task execution finishes, by corresponding first time slot allocation of being finished for task to new task.
The presently disclosed embodiments is described above, above description is exemplary, and non-exclusive, and It is not limited to disclosed each embodiment.Without departing from the scope and spirit of illustrated each embodiment, for this skill Many modifications and changes are obvious for the those of ordinary skill in art field.The selection of term used herein, purport In the principle, practical application or technological improvement to the technology in market for best explaining each embodiment, or lead this technology Other those of ordinary skill in domain can understand each embodiment disclosed herein.

Claims (22)

1.一种Scrypt算法工作量证明方法,其特征在于,所述方法包括多个工作量证明的任务,所述任务包括第一阶段和第二阶段,所述方法包括:1. a Scrypt algorithm workload proof method, is characterized in that, described method comprises the task of a plurality of workload proofs, and described task comprises first stage and second stage, and described method comprises: 在各任务的第一阶段,在第一数据中抽取部分数据作为存储数据进行存储,所述存储数据的数量少于所述第一数据的数量;In the first stage of each task, part of the data is extracted from the first data to be stored as stored data, and the quantity of the stored data is less than the quantity of the first data; 在各任务的第二阶段,将各任务分别对应至第一周期内不同的第一时隙,在与目标任务对应的第一时隙内,根据所述目标任务的存储数据确定对应的第一数据,根据所述对应的第一数据生成第二数据,所述目标任务包括任一所述任务,所述第一周期包括多个第一时隙,所述第一时隙的数量大于或等于所述任务的数量。In the second stage of each task, each task is respectively corresponding to a different first time slot in the first cycle, and in the first time slot corresponding to the target task, the corresponding first time slot is determined according to the stored data of the target task data, second data is generated according to the corresponding first data, the target task includes any one of the tasks, the first period includes a plurality of first time slots, and the number of the first time slots is greater than or equal to The number of tasks in question. 2.根据权利要求1所述的方法,其特征在于,在各任务的第一阶段,在第一数据中抽取部分数据作为存储数据进行存储,包括:2. The method according to claim 1, wherein, in the first stage of each task, extracting part of data from the first data is stored as stored data, comprising: 在各任务的第一阶段,将各任务分别对应至第二周期内不同的第二时隙,In the first stage of each task, each task is respectively corresponding to a different second time slot in the second cycle, 在与所述目标任务对应的第二时隙内,生成第一数据,并在第一数据中抽取部分数据作为存储数据写入存储器,所述第二周期包括多个第二时隙,所述第二时隙的数量大于或等于所述任务的数量。In the second time slot corresponding to the target task, first data is generated, and part of the data is extracted from the first data and written into the memory as storage data, the second cycle includes a plurality of second time slots, the The number of second time slots is greater than or equal to the number of tasks. 3.根据权利要求1所述的方法,其特征在于,根据所述目标任务的存储数据确定对应的第一数据,根据所述对应的第一数据生成第二数据,包括:3. The method according to claim 1, wherein determining corresponding first data according to the stored data of the target task, and generating second data according to the corresponding first data, comprising: 在所述目标任务的所述存储数据中查找与当前第二数据对应的第一数据;Find the first data corresponding to the current second data in the stored data of the target task; 当无法在所述存储数据中查找到与当前第二数据对应的第一数据时,根据最接近的存储数据,确定与所述当前第二数据对应的第一数据;When the first data corresponding to the current second data cannot be found in the stored data, determine the first data corresponding to the current second data according to the closest stored data; 根据与所述当前第二数据对应的第一数据和所述当前第二数据,得到所述当前第二数据的下一个第二数据。According to the first data corresponding to the current second data and the current second data, the next second data of the current second data is obtained. 4.根据权利要求3所述的方法,其特征在于,所述第一数据为有序序列,在第一数据中抽取部分数据作为存储数据进行存储,包括:4. The method according to claim 3, wherein the first data is an ordered sequence, and extracting part of the data from the first data is stored as stored data, comprising: 根据所述存储数据的序列号确定所述存储数据的存储地址;Determine the storage address of the stored data according to the serial number of the stored data; 在所述目标任务的所述存储数据中查找与当前第二数据对应的第一数据,包括:Searching for the first data corresponding to the current second data in the stored data of the target task, including: 根据在所述目标任务的当前第二数据中预设数位上的数据生成索引地址,在所述存储地址中查找所述索引地址,根据查找结果确定与当前第二数据对应的第一数据。An index address is generated according to data on preset digits in the current second data of the target task, the index address is searched in the storage address, and the first data corresponding to the current second data is determined according to the search result. 5.根据权利要求4所述的方法,其特征在于,根据最接近的存储数据,确定与所述当前第二数据对应的第一数据,包括:5. The method according to claim 4, wherein determining the first data corresponding to the current second data according to the closest stored data, comprising: 确定最接近的存储地址与所述索引地址之间的差值;determining the difference between the closest memory address and the index address; 根据所述差值确定的迭代次数,将最接近的存储地址中的存储数据进行迭代运算,得到与所述索引地址对应的第一数据。According to the number of iterations determined by the difference, iterative operation is performed on the storage data in the closest storage address to obtain the first data corresponding to the index address. 6.根据权利要求1所述的方法,其特征在于,在第一数据中抽取部分数据作为存储数据进行存储,包括以下任意一种:6. The method according to claim 1, characterized in that, extracting partial data in the first data is stored as storage data, comprising any of the following: 在第一数据中按照预设的抽取间隔抽取存储数据进行存储;extracting and storing data according to a preset extraction interval in the first data for storage; 在第一数据中按照预设的序列号范围抽取存储数据进行存储;extracting and storing data from the first data according to a preset serial number range for storage; 在第一数据中随机抽取预设数量的存储数据进行存储。A preset amount of stored data is randomly selected from the first data for storage. 7.根据权利要求2所述的方法,其特征在于,各任务的存储数据存储在存储器的不同存储空间,所述存储空间的数量大于或等于所述任务的数量。7 . The method according to claim 2 , wherein the storage data of each task is stored in different storage spaces of the memory, and the quantity of the storage spaces is greater than or equal to the quantity of the tasks. 8 . 8.根据权利要求2所述的方法,其特征在于,以所述第二周期在前、所述第一周期在后组成的执行周期执行各所述任务。8 . The method according to claim 2 , wherein each of the tasks is executed in an execution cycle consisting of the second cycle preceding the second cycle and the first cycle following the first cycle. 9 . 9.根据权利要求1所述的方法,其特征在于,所述第一周期还包括空闲时隙,所述空闲时隙的数量或时长根据所述存储器的延迟确定。9 . The method according to claim 1 , wherein the first period further comprises idle time slots, and the number or duration of the idle time slots is determined according to the delay of the memory. 10 . 10.根据权利要求2所述的方法,其特征在于,所述第一周期和所述第二周期并行。10. The method of claim 2, wherein the first cycle and the second cycle are parallel. 11.根据权利要求1所述的方法,其特征在于,所述方法还包括:11. The method of claim 1, wherein the method further comprises: 当所述多个任务中的至少一个任务执行完毕时,将执行完毕的任务对应的第一时隙分配至新的任务。When the execution of at least one task in the plurality of tasks is completed, the first time slot corresponding to the completed task is allocated to a new task. 12.一种Scrypt算法工作量证明装置,其特征在于,所述装置用于执行多个工作量证明的任务,所述任务包括第一阶段和第二阶段,所述装置包括:12. A Scrypt algorithm workload proof device, characterized in that the device is used to perform a plurality of workload proof tasks, the tasks include a first stage and a second stage, and the device comprises: 抽取模块,用于在各任务的第一阶段,在第一数据中抽取部分数据作为存储数据进行存储,所述存储数据的数量少于所述第一数据的数量;an extraction module, configured to extract part of the data from the first data as stored data for storage in the first stage of each task, and the quantity of the stored data is less than the quantity of the first data; 第一周期执行模块,用于在各任务的第二阶段,将各任务分别对应至第一周期内不同的第一时隙,在与目标任务对应的第一时隙内,根据所述目标任务的存储数据确定对应的第一数据,根据所述对应的第一数据生成第二数据,所述目标任务包括任一所述任务,所述第一周期包括多个第一时隙,所述第一时隙的数量大于或等于所述任务的数量。The first cycle execution module is used for, in the second stage of each task, to respectively correspond each task to a different first time slot in the first cycle, and in the first time slot corresponding to the target task, according to the target task The stored data determines corresponding first data, generates second data according to the corresponding first data, the target task includes any one of the tasks, the first cycle includes a plurality of first time slots, and the first The number of a slot is greater than or equal to the number of tasks. 13.根据权利要求12所述的装置,其特征在于,所述抽取模块,包括:13. The apparatus according to claim 12, wherein the extraction module comprises: 第二周期执行子模块,用于在各任务的第一阶段,将各任务分别对应至第二周期内不同的第二时隙,在与所述目标任务对应的第二时隙内,生成第一数据,并在第一数据中抽取部分数据作为存储数据写入存储器,所述第二周期包括多个第二时隙,所述第二时隙的数量大于或等于所述任务的数量。The second cycle execution sub-module is configured to, in the first stage of each task, respectively correspond each task to a different second time slot in the second cycle, and generate a second time slot corresponding to the target task in the second time slot corresponding to the target task. One data is extracted, and part of the data is extracted from the first data and written into the memory as storage data. The second cycle includes a plurality of second time slots, and the number of the second time slots is greater than or equal to the number of the tasks. 14.根据权利要求12所述的装置,其特征在于,所述第一周期执行模块,包括:14. The apparatus according to claim 12, wherein the first cycle execution module comprises: 对应数据查找子模块,用于在所述目标任务的所述存储数据中查找与当前第二数据对应的第一数据;a corresponding data search submodule, used for searching the first data corresponding to the current second data in the stored data of the target task; 对应数据确定子模块,用于当无法在所述存储数据中查找到与当前第二数据对应的第一数据时,根据最接近的存储数据,确定与所述当前第二数据对应的第一数据;Corresponding data determination sub-module for determining the first data corresponding to the current second data according to the closest stored data when the first data corresponding to the current second data cannot be found in the stored data ; 第二数据获取子模块,用于根据与所述当前第二数据对应的第一数据和所述当前第二数据,得到所述当前第二数据的下一个第二数据。The second data acquisition sub-module is configured to obtain the next second data of the current second data according to the first data corresponding to the current second data and the current second data. 15.根据权利要求14所述的装置,其特征在于,所述第一数据为有序序列,所述抽取模块,包括:15. The apparatus according to claim 14, wherein the first data is an ordered sequence, and the extraction module comprises: 存储地址子模块,用于根据所述存储数据的序列号确定所述存储数据的存储地址;a storage address submodule, used for determining the storage address of the stored data according to the serial number of the stored data; 所述对应数据查找子模块,用于:The corresponding data search submodule is used for: 根据在所述目标任务的当前第二数据中预设数位上的数据生成索引地址,在所述存储地址中查找所述索引地址,根据查找结果确定与当前第二数据对应的第一数据。An index address is generated according to data on preset digits in the current second data of the target task, the index address is searched in the storage address, and the first data corresponding to the current second data is determined according to the search result. 16.根据权利要求15所述的装置,其特征在于,所述对应数据确定子模块,用于:16. The apparatus according to claim 15, wherein the corresponding data determination submodule is used for: 确定最接近的存储地址与所述索引地址之间的差值;determining the difference between the closest memory address and the index address; 根据所述差值确定的迭代次数,将最接近的存储地址中的存储数据进行迭代运算,得到与所述索引地址对应的第一数据。According to the number of iterations determined by the difference, iterative operation is performed on the storage data in the closest storage address to obtain the first data corresponding to the index address. 17.根据权利要求12所述的装置,其特征在于,在第一数据中抽取部分数据作为存储数据进行存储,包括以下任意一种:17. The device according to claim 12, characterized in that, extracting part of data from the first data as stored data for storage, comprising any of the following: 在第一数据中按照预设的抽取间隔抽取存储数据进行存储;extracting and storing data according to a preset extraction interval in the first data for storage; 在第一数据中按照预设的序列号范围抽取存储数据进行存储;extracting and storing data from the first data according to a preset serial number range for storage; 在第一数据中随机抽取预设数量的存储数据进行存储。A preset amount of stored data is randomly selected from the first data for storage. 18.根据权利要求13所述的装置,其特征在于,各任务的存储数据存储在存储器的不同存储空间,所述存储空间的数量大于或等于所述任务的数量。18. The apparatus according to claim 13, wherein the storage data of each task is stored in different storage spaces of the memory, and the quantity of the storage spaces is greater than or equal to the quantity of the tasks. 19.根据权利要求13所述的装置,其特征在于,以所述第二周期在前、所述第一周期在后组成的执行周期执行各所述任务。19 . The apparatus according to claim 13 , wherein each of the tasks is executed in an execution cycle consisting of the second cycle preceding the second cycle and the first cycle following the first cycle. 20 . 20.根据权利要求12所述的装置,其特征在于,所述第一周期还包括空闲时隙,所述空闲时隙的数量或时长根据所述存储器的延迟确定。20. The apparatus according to claim 12, wherein the first period further comprises idle time slots, and the number or duration of the idle time slots is determined according to the delay of the memory. 21.根据权利要求13所述的装置,其特征在于,所述第一周期和所述第二周期并行。21. The apparatus of claim 13, wherein the first cycle and the second cycle are parallel. 22.根据权利要求12所述的装置,其特征在于,所述装置还包括:22. The apparatus of claim 12, wherein the apparatus further comprises: 分配模块,用于当所述多个任务中的至少一个任务执行完毕时,将执行完毕的任务对应的第一时隙分配至新的任务。The allocation module is configured to allocate a first time slot corresponding to the completed task to a new task when at least one task in the plurality of tasks has been executed.
CN201910068396.6A 2019-01-24 2019-01-24 Scrypt algorithm workload proof method and device Active CN109815372B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910068396.6A CN109815372B (en) 2019-01-24 2019-01-24 Scrypt algorithm workload proof method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910068396.6A CN109815372B (en) 2019-01-24 2019-01-24 Scrypt algorithm workload proof method and device

Publications (2)

Publication Number Publication Date
CN109815372A true CN109815372A (en) 2019-05-28
CN109815372B CN109815372B (en) 2024-11-08

Family

ID=66604932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910068396.6A Active CN109815372B (en) 2019-01-24 2019-01-24 Scrypt algorithm workload proof method and device

Country Status (1)

Country Link
CN (1) CN109815372B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1920781A (en) * 2005-08-24 2007-02-28 松下电器产业株式会社 Task execution device and method
CN1971710A (en) * 2006-12-08 2007-05-30 中兴通讯股份有限公司 Single-chip based multi-channel multi-voice codec scheduling method
CN104718428A (en) * 2012-10-15 2015-06-17 株式会社日立高新技术 Pattern inspecting and measuring device and program
CN105515565A (en) * 2015-12-14 2016-04-20 天津光电通信技术有限公司 Hardware logical resource reuse module and method for realizing reuse
WO2016147279A1 (en) * 2015-03-13 2016-09-22 富士通株式会社 Data management control program, data management control device, and data management control method
CN106919628A (en) * 2015-12-28 2017-07-04 阿里巴巴集团控股有限公司 A kind for the treatment of method and apparatus of diagram data
CN107396447A (en) * 2017-08-02 2017-11-24 苏州欧普照明有限公司 Slot allocation method, the apparatus and system of the star-like networkings of LoRa
CN107451292A (en) * 2017-08-16 2017-12-08 北京京东尚科信息技术有限公司 Scene feature data storage method, system and data extraction system on line
CN107748794A (en) * 2017-11-03 2018-03-02 中国人民解放军陆军工程大学 Spatial data storage method
CN108322304A (en) * 2018-02-28 2018-07-24 北京比特大陆科技有限公司 The computational methods and device of proof of work, electronic equipment, program and medium
CN108549830A (en) * 2018-04-11 2018-09-18 思力科(深圳)电子科技有限公司 A kind of RFID reader and block chain network applied to block chain

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1920781A (en) * 2005-08-24 2007-02-28 松下电器产业株式会社 Task execution device and method
US20070050779A1 (en) * 2005-08-24 2007-03-01 Matsushita Electric Industrial Co., Ltd. Task execution device and method
CN1971710A (en) * 2006-12-08 2007-05-30 中兴通讯股份有限公司 Single-chip based multi-channel multi-voice codec scheduling method
CN104718428A (en) * 2012-10-15 2015-06-17 株式会社日立高新技术 Pattern inspecting and measuring device and program
WO2016147279A1 (en) * 2015-03-13 2016-09-22 富士通株式会社 Data management control program, data management control device, and data management control method
CN105515565A (en) * 2015-12-14 2016-04-20 天津光电通信技术有限公司 Hardware logical resource reuse module and method for realizing reuse
CN106919628A (en) * 2015-12-28 2017-07-04 阿里巴巴集团控股有限公司 A kind for the treatment of method and apparatus of diagram data
CN107396447A (en) * 2017-08-02 2017-11-24 苏州欧普照明有限公司 Slot allocation method, the apparatus and system of the star-like networkings of LoRa
CN107451292A (en) * 2017-08-16 2017-12-08 北京京东尚科信息技术有限公司 Scene feature data storage method, system and data extraction system on line
CN107748794A (en) * 2017-11-03 2018-03-02 中国人民解放军陆军工程大学 Spatial data storage method
CN108322304A (en) * 2018-02-28 2018-07-24 北京比特大陆科技有限公司 The computational methods and device of proof of work, electronic equipment, program and medium
CN108549830A (en) * 2018-04-11 2018-09-18 思力科(深圳)电子科技有限公司 A kind of RFID reader and block chain network applied to block chain

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
古古今今: "莱特币背后的秘密-白话scrypt密码算法", Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/32484253?fro> *
斯雪明: "区块链安全研究综述", 密码学报 *
阿尔文德 林华等: "区块链:技术驱动金融", vol. 2016, 31 August 2016, 中信出版社, pages: 249 - 280 *

Also Published As

Publication number Publication date
CN109815372B (en) 2024-11-08

Similar Documents

Publication Publication Date Title
JP4339381B2 (en) Shared memory multiprocessor system and information processing method thereof
Raghavan et al. On randomly interleaved memories
JP6362805B1 (en) Method for enabling access to past transactions in a blockchain network and nodes for configuring the network
WO2018027706A1 (en) Fft processor and algorithm
CN106033420A (en) A Hash table processing method and device
CN105159987B (en) A kind of storage of data, lookup method and device
CN105359142B (en) Hash connecting method and device
US9081561B2 (en) Method for improving execution performance of multiply-add instruction during compiling
CN109033365A (en) A kind of data processing method and relevant device
CN109815372A (en) Scrypt algorithm workload proving method and device
US20070156769A1 (en) Partition elimination system for a database that uses a multi-level partitioning definition
CN110362577B (en) Data insertion method, device, equipment and storage medium
CN109816110A (en) Scrypt algorithm workload proving method and device
CN110515860A (en) The address of storing data identifies method, system and device in a kind of memory
CN106557430A (en) A kind of data cached brush method and device
CN110928253B (en) Dynamic Weighted Heuristic Scheduling Method for Automatic Manufacturing System
CN112800057B (en) Fingerprint table management method and device
CN111143456B (en) Spark-based Cassandra data import method, device, equipment and medium
CN110059378B (en) Automatic manufacturing system Petri network state generation method based on GPU parallel computing
CN116450334A (en) GPU resource scheduling method
CN112464157B (en) Vector ordering method and system
CN117891858B (en) A time- and space-efficient parallel approximate membership query method and system
Noon et al. Efficient Scheduling of Data Transfers in Multi-tiered Storage
CN115379320B (en) A channel allocation method and system
Pascual et al. Effects of job placement on scheduling performance

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20211025

Address after: 200436 room 138, No. 5 and 6, Lane 1188, Wanrong Road, Jing'an District, Shanghai

Applicant after: Shanghai Canaan Jiesi Information Technology Co.,Ltd.

Address before: 310026 room 1203, floor 12, building 4, No. 9, Jiuhuan Road, Jianggan District, Hangzhou, Zhejiang Province

Applicant before: Hangzhou Canaan Creative Information Technology Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant