Commit cc5ae358 authored by vicotor's avatar vicotor

update protocol

parent e3413c73
...@@ -32,6 +32,8 @@ type WorkerMessage struct { ...@@ -32,6 +32,8 @@ type WorkerMessage struct {
// *WorkerMessage_GoodbyeMessage // *WorkerMessage_GoodbyeMessage
// *WorkerMessage_ResourceMap // *WorkerMessage_ResourceMap
// *WorkerMessage_FetchStandardTask // *WorkerMessage_FetchStandardTask
// *WorkerMessage_RegisteMessage
// *WorkerMessage_NodeInfo
Message isWorkerMessage_Message `protobuf_oneof:"message"` Message isWorkerMessage_Message `protobuf_oneof:"message"`
XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"` XXX_unrecognized []byte `json:"-"`
...@@ -76,7 +78,7 @@ type WorkerMessage_Status struct { ...@@ -76,7 +78,7 @@ type WorkerMessage_Status struct {
Status *StatusResponse `protobuf:"bytes,3,opt,name=status,proto3,oneof" json:"status,omitempty"` Status *StatusResponse `protobuf:"bytes,3,opt,name=status,proto3,oneof" json:"status,omitempty"`
} }
type WorkerMessage_DeviceInfo struct { type WorkerMessage_DeviceInfo struct {
DeviceInfo *DeviceInfoResponse `protobuf:"bytes,4,opt,name=device_info,json=deviceInfo,proto3,oneof" json:"device_info,omitempty"` DeviceInfo *DeviceInfoMessage `protobuf:"bytes,4,opt,name=device_info,json=deviceInfo,proto3,oneof" json:"device_info,omitempty"`
} }
type WorkerMessage_DeviceUsage struct { type WorkerMessage_DeviceUsage struct {
DeviceUsage *DeviceUsageResponse `protobuf:"bytes,5,opt,name=device_usage,json=deviceUsage,proto3,oneof" json:"device_usage,omitempty"` DeviceUsage *DeviceUsageResponse `protobuf:"bytes,5,opt,name=device_usage,json=deviceUsage,proto3,oneof" json:"device_usage,omitempty"`
...@@ -90,6 +92,12 @@ type WorkerMessage_ResourceMap struct { ...@@ -90,6 +92,12 @@ type WorkerMessage_ResourceMap struct {
type WorkerMessage_FetchStandardTask struct { type WorkerMessage_FetchStandardTask struct {
FetchStandardTask *FetchStandardTask `protobuf:"bytes,8,opt,name=fetch_standard_task,json=fetchStandardTask,proto3,oneof" json:"fetch_standard_task,omitempty"` FetchStandardTask *FetchStandardTask `protobuf:"bytes,8,opt,name=fetch_standard_task,json=fetchStandardTask,proto3,oneof" json:"fetch_standard_task,omitempty"`
} }
type WorkerMessage_RegisteMessage struct {
RegisteMessage *RegisteMessage `protobuf:"bytes,9,opt,name=registe_message,json=registeMessage,proto3,oneof" json:"registe_message,omitempty"`
}
type WorkerMessage_NodeInfo struct {
NodeInfo *NodeInfoResponse `protobuf:"bytes,10,opt,name=node_info,json=nodeInfo,proto3,oneof" json:"node_info,omitempty"`
}
func (*WorkerMessage_HeartbeatResponse) isWorkerMessage_Message() {} func (*WorkerMessage_HeartbeatResponse) isWorkerMessage_Message() {}
func (*WorkerMessage_SubmitTaskResult) isWorkerMessage_Message() {} func (*WorkerMessage_SubmitTaskResult) isWorkerMessage_Message() {}
...@@ -99,6 +107,8 @@ func (*WorkerMessage_DeviceUsage) isWorkerMessage_Message() {} ...@@ -99,6 +107,8 @@ func (*WorkerMessage_DeviceUsage) isWorkerMessage_Message() {}
func (*WorkerMessage_GoodbyeMessage) isWorkerMessage_Message() {} func (*WorkerMessage_GoodbyeMessage) isWorkerMessage_Message() {}
func (*WorkerMessage_ResourceMap) isWorkerMessage_Message() {} func (*WorkerMessage_ResourceMap) isWorkerMessage_Message() {}
func (*WorkerMessage_FetchStandardTask) isWorkerMessage_Message() {} func (*WorkerMessage_FetchStandardTask) isWorkerMessage_Message() {}
func (*WorkerMessage_RegisteMessage) isWorkerMessage_Message() {}
func (*WorkerMessage_NodeInfo) isWorkerMessage_Message() {}
func (m *WorkerMessage) GetMessage() isWorkerMessage_Message { func (m *WorkerMessage) GetMessage() isWorkerMessage_Message {
if m != nil { if m != nil {
...@@ -128,7 +138,7 @@ func (m *WorkerMessage) GetStatus() *StatusResponse { ...@@ -128,7 +138,7 @@ func (m *WorkerMessage) GetStatus() *StatusResponse {
return nil return nil
} }
func (m *WorkerMessage) GetDeviceInfo() *DeviceInfoResponse { func (m *WorkerMessage) GetDeviceInfo() *DeviceInfoMessage {
if x, ok := m.GetMessage().(*WorkerMessage_DeviceInfo); ok { if x, ok := m.GetMessage().(*WorkerMessage_DeviceInfo); ok {
return x.DeviceInfo return x.DeviceInfo
} }
...@@ -163,6 +173,20 @@ func (m *WorkerMessage) GetFetchStandardTask() *FetchStandardTask { ...@@ -163,6 +173,20 @@ func (m *WorkerMessage) GetFetchStandardTask() *FetchStandardTask {
return nil return nil
} }
func (m *WorkerMessage) GetRegisteMessage() *RegisteMessage {
if x, ok := m.GetMessage().(*WorkerMessage_RegisteMessage); ok {
return x.RegisteMessage
}
return nil
}
func (m *WorkerMessage) GetNodeInfo() *NodeInfoResponse {
if x, ok := m.GetMessage().(*WorkerMessage_NodeInfo); ok {
return x.NodeInfo
}
return nil
}
// XXX_OneofWrappers is for the internal use of the proto package. // XXX_OneofWrappers is for the internal use of the proto package.
func (*WorkerMessage) XXX_OneofWrappers() []interface{} { func (*WorkerMessage) XXX_OneofWrappers() []interface{} {
return []interface{}{ return []interface{}{
...@@ -174,6 +198,8 @@ func (*WorkerMessage) XXX_OneofWrappers() []interface{} { ...@@ -174,6 +198,8 @@ func (*WorkerMessage) XXX_OneofWrappers() []interface{} {
(*WorkerMessage_GoodbyeMessage)(nil), (*WorkerMessage_GoodbyeMessage)(nil),
(*WorkerMessage_ResourceMap)(nil), (*WorkerMessage_ResourceMap)(nil),
(*WorkerMessage_FetchStandardTask)(nil), (*WorkerMessage_FetchStandardTask)(nil),
(*WorkerMessage_RegisteMessage)(nil),
(*WorkerMessage_NodeInfo)(nil),
} }
} }
...@@ -183,7 +209,6 @@ type ManagerMessage struct { ...@@ -183,7 +209,6 @@ type ManagerMessage struct {
// *ManagerMessage_PushTaskMessage // *ManagerMessage_PushTaskMessage
// *ManagerMessage_ProofTaskResult // *ManagerMessage_ProofTaskResult
// *ManagerMessage_StatusRequest // *ManagerMessage_StatusRequest
// *ManagerMessage_DeviceRequest
// *ManagerMessage_DeviceUsage // *ManagerMessage_DeviceUsage
// *ManagerMessage_GoodbyeMessage // *ManagerMessage_GoodbyeMessage
Message isManagerMessage_Message `protobuf_oneof:"message"` Message isManagerMessage_Message `protobuf_oneof:"message"`
...@@ -232,21 +257,17 @@ type ManagerMessage_ProofTaskResult struct { ...@@ -232,21 +257,17 @@ type ManagerMessage_ProofTaskResult struct {
type ManagerMessage_StatusRequest struct { type ManagerMessage_StatusRequest struct {
StatusRequest *StatusRequest `protobuf:"bytes,4,opt,name=status_request,json=statusRequest,proto3,oneof" json:"status_request,omitempty"` StatusRequest *StatusRequest `protobuf:"bytes,4,opt,name=status_request,json=statusRequest,proto3,oneof" json:"status_request,omitempty"`
} }
type ManagerMessage_DeviceRequest struct {
DeviceRequest *DeviceInfoRequest `protobuf:"bytes,5,opt,name=device_request,json=deviceRequest,proto3,oneof" json:"device_request,omitempty"`
}
type ManagerMessage_DeviceUsage struct { type ManagerMessage_DeviceUsage struct {
DeviceUsage *DeviceUsageRequest `protobuf:"bytes,6,opt,name=device_usage,json=deviceUsage,proto3,oneof" json:"device_usage,omitempty"` DeviceUsage *DeviceUsageRequest `protobuf:"bytes,5,opt,name=device_usage,json=deviceUsage,proto3,oneof" json:"device_usage,omitempty"`
} }
type ManagerMessage_GoodbyeMessage struct { type ManagerMessage_GoodbyeMessage struct {
GoodbyeMessage *GoodbyeMessage `protobuf:"bytes,7,opt,name=goodbye_message,json=goodbyeMessage,proto3,oneof" json:"goodbye_message,omitempty"` GoodbyeMessage *GoodbyeMessage `protobuf:"bytes,6,opt,name=goodbye_message,json=goodbyeMessage,proto3,oneof" json:"goodbye_message,omitempty"`
} }
func (*ManagerMessage_HeartbeatRequest) isManagerMessage_Message() {} func (*ManagerMessage_HeartbeatRequest) isManagerMessage_Message() {}
func (*ManagerMessage_PushTaskMessage) isManagerMessage_Message() {} func (*ManagerMessage_PushTaskMessage) isManagerMessage_Message() {}
func (*ManagerMessage_ProofTaskResult) isManagerMessage_Message() {} func (*ManagerMessage_ProofTaskResult) isManagerMessage_Message() {}
func (*ManagerMessage_StatusRequest) isManagerMessage_Message() {} func (*ManagerMessage_StatusRequest) isManagerMessage_Message() {}
func (*ManagerMessage_DeviceRequest) isManagerMessage_Message() {}
func (*ManagerMessage_DeviceUsage) isManagerMessage_Message() {} func (*ManagerMessage_DeviceUsage) isManagerMessage_Message() {}
func (*ManagerMessage_GoodbyeMessage) isManagerMessage_Message() {} func (*ManagerMessage_GoodbyeMessage) isManagerMessage_Message() {}
...@@ -285,13 +306,6 @@ func (m *ManagerMessage) GetStatusRequest() *StatusRequest { ...@@ -285,13 +306,6 @@ func (m *ManagerMessage) GetStatusRequest() *StatusRequest {
return nil return nil
} }
func (m *ManagerMessage) GetDeviceRequest() *DeviceInfoRequest {
if x, ok := m.GetMessage().(*ManagerMessage_DeviceRequest); ok {
return x.DeviceRequest
}
return nil
}
func (m *ManagerMessage) GetDeviceUsage() *DeviceUsageRequest { func (m *ManagerMessage) GetDeviceUsage() *DeviceUsageRequest {
if x, ok := m.GetMessage().(*ManagerMessage_DeviceUsage); ok { if x, ok := m.GetMessage().(*ManagerMessage_DeviceUsage); ok {
return x.DeviceUsage return x.DeviceUsage
...@@ -313,7 +327,6 @@ func (*ManagerMessage) XXX_OneofWrappers() []interface{} { ...@@ -313,7 +327,6 @@ func (*ManagerMessage) XXX_OneofWrappers() []interface{} {
(*ManagerMessage_PushTaskMessage)(nil), (*ManagerMessage_PushTaskMessage)(nil),
(*ManagerMessage_ProofTaskResult)(nil), (*ManagerMessage_ProofTaskResult)(nil),
(*ManagerMessage_StatusRequest)(nil), (*ManagerMessage_StatusRequest)(nil),
(*ManagerMessage_DeviceRequest)(nil),
(*ManagerMessage_DeviceUsage)(nil), (*ManagerMessage_DeviceUsage)(nil),
(*ManagerMessage_GoodbyeMessage)(nil), (*ManagerMessage_GoodbyeMessage)(nil),
} }
...@@ -561,74 +574,164 @@ func (m *DeviceInfoRequest) XXX_DiscardUnknown() { ...@@ -561,74 +574,164 @@ func (m *DeviceInfoRequest) XXX_DiscardUnknown() {
var xxx_messageInfo_DeviceInfoRequest proto.InternalMessageInfo var xxx_messageInfo_DeviceInfoRequest proto.InternalMessageInfo
type DeviceInfoResponse struct { type DeviceInfoMessage struct {
MinerPubkey string `protobuf:"bytes,1,opt,name=miner_pubkey,json=minerPubkey,proto3" json:"miner_pubkey,omitempty"`
BenefitAddress string `protobuf:"bytes,2,opt,name=benefit_address,json=benefitAddress,proto3" json:"benefit_address,omitempty"`
Devices []*DeviceInfo `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"` Devices []*DeviceInfo `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"`
DeviceSignature []byte `protobuf:"bytes,4,opt,name=device_signature,json=deviceSignature,proto3" json:"device_signature,omitempty"` DeviceSignature []byte `protobuf:"bytes,4,opt,name=device_signature,json=deviceSignature,proto3" json:"device_signature,omitempty"`
DeviceIps []string `protobuf:"bytes,5,rep,name=device_ips,json=deviceIps,proto3" json:"device_ips,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"` XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"` XXX_sizecache int32 `json:"-"`
} }
func (m *DeviceInfoResponse) Reset() { *m = DeviceInfoResponse{} } func (m *DeviceInfoMessage) Reset() { *m = DeviceInfoMessage{} }
func (m *DeviceInfoResponse) String() string { return proto.CompactTextString(m) } func (m *DeviceInfoMessage) String() string { return proto.CompactTextString(m) }
func (*DeviceInfoResponse) ProtoMessage() {} func (*DeviceInfoMessage) ProtoMessage() {}
func (*DeviceInfoResponse) Descriptor() ([]byte, []int) { func (*DeviceInfoMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{9} return fileDescriptor_810ae261dc8e2975, []int{9}
} }
func (m *DeviceInfoResponse) XXX_Unmarshal(b []byte) error { func (m *DeviceInfoMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeviceInfoResponse.Unmarshal(m, b) return xxx_messageInfo_DeviceInfoMessage.Unmarshal(m, b)
} }
func (m *DeviceInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { func (m *DeviceInfoMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeviceInfoResponse.Marshal(b, m, deterministic) return xxx_messageInfo_DeviceInfoMessage.Marshal(b, m, deterministic)
} }
func (m *DeviceInfoResponse) XXX_Merge(src proto.Message) { func (m *DeviceInfoMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeviceInfoResponse.Merge(m, src) xxx_messageInfo_DeviceInfoMessage.Merge(m, src)
} }
func (m *DeviceInfoResponse) XXX_Size() int { func (m *DeviceInfoMessage) XXX_Size() int {
return xxx_messageInfo_DeviceInfoResponse.Size(m) return xxx_messageInfo_DeviceInfoMessage.Size(m)
} }
func (m *DeviceInfoResponse) XXX_DiscardUnknown() { func (m *DeviceInfoMessage) XXX_DiscardUnknown() {
xxx_messageInfo_DeviceInfoResponse.DiscardUnknown(m) xxx_messageInfo_DeviceInfoMessage.DiscardUnknown(m)
} }
var xxx_messageInfo_DeviceInfoResponse proto.InternalMessageInfo var xxx_messageInfo_DeviceInfoMessage proto.InternalMessageInfo
func (m *DeviceInfoResponse) GetMinerPubkey() string { func (m *DeviceInfoMessage) GetDevices() []*DeviceInfo {
if m != nil { if m != nil {
return m.MinerPubkey return m.Devices
} }
return "" return nil
} }
func (m *DeviceInfoResponse) GetBenefitAddress() string { func (m *DeviceInfoMessage) GetDeviceSignature() []byte {
if m != nil { if m != nil {
return m.BenefitAddress return m.DeviceSignature
} }
return "" return nil
} }
func (m *DeviceInfoResponse) GetDevices() []*DeviceInfo { type RegisteMessage struct {
DeviceIp string `protobuf:"bytes,1,opt,name=device_ip,json=deviceIp,proto3" json:"device_ip,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *RegisteMessage) Reset() { *m = RegisteMessage{} }
func (m *RegisteMessage) String() string { return proto.CompactTextString(m) }
func (*RegisteMessage) ProtoMessage() {}
func (*RegisteMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{10}
}
func (m *RegisteMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RegisteMessage.Unmarshal(m, b)
}
func (m *RegisteMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_RegisteMessage.Marshal(b, m, deterministic)
}
func (m *RegisteMessage) XXX_Merge(src proto.Message) {
xxx_messageInfo_RegisteMessage.Merge(m, src)
}
func (m *RegisteMessage) XXX_Size() int {
return xxx_messageInfo_RegisteMessage.Size(m)
}
func (m *RegisteMessage) XXX_DiscardUnknown() {
xxx_messageInfo_RegisteMessage.DiscardUnknown(m)
}
var xxx_messageInfo_RegisteMessage proto.InternalMessageInfo
func (m *RegisteMessage) GetDeviceIp() string {
if m != nil { if m != nil {
return m.Devices return m.DeviceIp
} }
return nil return ""
}
type NodeInfoRequest struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
} }
func (m *DeviceInfoResponse) GetDeviceSignature() []byte { func (m *NodeInfoRequest) Reset() { *m = NodeInfoRequest{} }
func (m *NodeInfoRequest) String() string { return proto.CompactTextString(m) }
func (*NodeInfoRequest) ProtoMessage() {}
func (*NodeInfoRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{11}
}
func (m *NodeInfoRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NodeInfoRequest.Unmarshal(m, b)
}
func (m *NodeInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_NodeInfoRequest.Marshal(b, m, deterministic)
}
func (m *NodeInfoRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_NodeInfoRequest.Merge(m, src)
}
func (m *NodeInfoRequest) XXX_Size() int {
return xxx_messageInfo_NodeInfoRequest.Size(m)
}
func (m *NodeInfoRequest) XXX_DiscardUnknown() {
xxx_messageInfo_NodeInfoRequest.DiscardUnknown(m)
}
var xxx_messageInfo_NodeInfoRequest proto.InternalMessageInfo
type NodeInfoResponse struct {
MinerPubkey string `protobuf:"bytes,1,opt,name=miner_pubkey,json=minerPubkey,proto3" json:"miner_pubkey,omitempty"`
BenefitAddress string `protobuf:"bytes,2,opt,name=benefit_address,json=benefitAddress,proto3" json:"benefit_address,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *NodeInfoResponse) Reset() { *m = NodeInfoResponse{} }
func (m *NodeInfoResponse) String() string { return proto.CompactTextString(m) }
func (*NodeInfoResponse) ProtoMessage() {}
func (*NodeInfoResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{12}
}
func (m *NodeInfoResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NodeInfoResponse.Unmarshal(m, b)
}
func (m *NodeInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_NodeInfoResponse.Marshal(b, m, deterministic)
}
func (m *NodeInfoResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_NodeInfoResponse.Merge(m, src)
}
func (m *NodeInfoResponse) XXX_Size() int {
return xxx_messageInfo_NodeInfoResponse.Size(m)
}
func (m *NodeInfoResponse) XXX_DiscardUnknown() {
xxx_messageInfo_NodeInfoResponse.DiscardUnknown(m)
}
var xxx_messageInfo_NodeInfoResponse proto.InternalMessageInfo
func (m *NodeInfoResponse) GetMinerPubkey() string {
if m != nil { if m != nil {
return m.DeviceSignature return m.MinerPubkey
} }
return nil return ""
} }
func (m *DeviceInfoResponse) GetDeviceIps() []string { func (m *NodeInfoResponse) GetBenefitAddress() string {
if m != nil { if m != nil {
return m.DeviceIps return m.BenefitAddress
} }
return nil return ""
} }
type DeviceUsage struct { type DeviceUsage struct {
...@@ -643,7 +746,7 @@ func (m *DeviceUsage) Reset() { *m = DeviceUsage{} } ...@@ -643,7 +746,7 @@ func (m *DeviceUsage) Reset() { *m = DeviceUsage{} }
func (m *DeviceUsage) String() string { return proto.CompactTextString(m) } func (m *DeviceUsage) String() string { return proto.CompactTextString(m) }
func (*DeviceUsage) ProtoMessage() {} func (*DeviceUsage) ProtoMessage() {}
func (*DeviceUsage) Descriptor() ([]byte, []int) { func (*DeviceUsage) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{10} return fileDescriptor_810ae261dc8e2975, []int{13}
} }
func (m *DeviceUsage) XXX_Unmarshal(b []byte) error { func (m *DeviceUsage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeviceUsage.Unmarshal(m, b) return xxx_messageInfo_DeviceUsage.Unmarshal(m, b)
...@@ -688,7 +791,7 @@ func (m *StatusResponse) Reset() { *m = StatusResponse{} } ...@@ -688,7 +791,7 @@ func (m *StatusResponse) Reset() { *m = StatusResponse{} }
func (m *StatusResponse) String() string { return proto.CompactTextString(m) } func (m *StatusResponse) String() string { return proto.CompactTextString(m) }
func (*StatusResponse) ProtoMessage() {} func (*StatusResponse) ProtoMessage() {}
func (*StatusResponse) Descriptor() ([]byte, []int) { func (*StatusResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{11} return fileDescriptor_810ae261dc8e2975, []int{14}
} }
func (m *StatusResponse) XXX_Unmarshal(b []byte) error { func (m *StatusResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StatusResponse.Unmarshal(m, b) return xxx_messageInfo_StatusResponse.Unmarshal(m, b)
...@@ -731,7 +834,7 @@ func (m *PushTaskMessage) Reset() { *m = PushTaskMessage{} } ...@@ -731,7 +834,7 @@ func (m *PushTaskMessage) Reset() { *m = PushTaskMessage{} }
func (m *PushTaskMessage) String() string { return proto.CompactTextString(m) } func (m *PushTaskMessage) String() string { return proto.CompactTextString(m) }
func (*PushTaskMessage) ProtoMessage() {} func (*PushTaskMessage) ProtoMessage() {}
func (*PushTaskMessage) Descriptor() ([]byte, []int) { func (*PushTaskMessage) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{12} return fileDescriptor_810ae261dc8e2975, []int{15}
} }
func (m *PushTaskMessage) XXX_Unmarshal(b []byte) error { func (m *PushTaskMessage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushTaskMessage.Unmarshal(m, b) return xxx_messageInfo_PushTaskMessage.Unmarshal(m, b)
...@@ -810,7 +913,7 @@ func (m *SubmitTaskResult) Reset() { *m = SubmitTaskResult{} } ...@@ -810,7 +913,7 @@ func (m *SubmitTaskResult) Reset() { *m = SubmitTaskResult{} }
func (m *SubmitTaskResult) String() string { return proto.CompactTextString(m) } func (m *SubmitTaskResult) String() string { return proto.CompactTextString(m) }
func (*SubmitTaskResult) ProtoMessage() {} func (*SubmitTaskResult) ProtoMessage() {}
func (*SubmitTaskResult) Descriptor() ([]byte, []int) { func (*SubmitTaskResult) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{13} return fileDescriptor_810ae261dc8e2975, []int{16}
} }
func (m *SubmitTaskResult) XXX_Unmarshal(b []byte) error { func (m *SubmitTaskResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SubmitTaskResult.Unmarshal(m, b) return xxx_messageInfo_SubmitTaskResult.Unmarshal(m, b)
...@@ -890,7 +993,7 @@ func (m *SubmitResourceMap) Reset() { *m = SubmitResourceMap{} } ...@@ -890,7 +993,7 @@ func (m *SubmitResourceMap) Reset() { *m = SubmitResourceMap{} }
func (m *SubmitResourceMap) String() string { return proto.CompactTextString(m) } func (m *SubmitResourceMap) String() string { return proto.CompactTextString(m) }
func (*SubmitResourceMap) ProtoMessage() {} func (*SubmitResourceMap) ProtoMessage() {}
func (*SubmitResourceMap) Descriptor() ([]byte, []int) { func (*SubmitResourceMap) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{14} return fileDescriptor_810ae261dc8e2975, []int{17}
} }
func (m *SubmitResourceMap) XXX_Unmarshal(b []byte) error { func (m *SubmitResourceMap) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SubmitResourceMap.Unmarshal(m, b) return xxx_messageInfo_SubmitResourceMap.Unmarshal(m, b)
...@@ -932,7 +1035,7 @@ func (m *ProofTaskResult) Reset() { *m = ProofTaskResult{} } ...@@ -932,7 +1035,7 @@ func (m *ProofTaskResult) Reset() { *m = ProofTaskResult{} }
func (m *ProofTaskResult) String() string { return proto.CompactTextString(m) } func (m *ProofTaskResult) String() string { return proto.CompactTextString(m) }
func (*ProofTaskResult) ProtoMessage() {} func (*ProofTaskResult) ProtoMessage() {}
func (*ProofTaskResult) Descriptor() ([]byte, []int) { func (*ProofTaskResult) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{15} return fileDescriptor_810ae261dc8e2975, []int{18}
} }
func (m *ProofTaskResult) XXX_Unmarshal(b []byte) error { func (m *ProofTaskResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ProofTaskResult.Unmarshal(m, b) return xxx_messageInfo_ProofTaskResult.Unmarshal(m, b)
...@@ -998,7 +1101,7 @@ func (m *FetchStandardTask) Reset() { *m = FetchStandardTask{} } ...@@ -998,7 +1101,7 @@ func (m *FetchStandardTask) Reset() { *m = FetchStandardTask{} }
func (m *FetchStandardTask) String() string { return proto.CompactTextString(m) } func (m *FetchStandardTask) String() string { return proto.CompactTextString(m) }
func (*FetchStandardTask) ProtoMessage() {} func (*FetchStandardTask) ProtoMessage() {}
func (*FetchStandardTask) Descriptor() ([]byte, []int) { func (*FetchStandardTask) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{16} return fileDescriptor_810ae261dc8e2975, []int{19}
} }
func (m *FetchStandardTask) XXX_Unmarshal(b []byte) error { func (m *FetchStandardTask) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FetchStandardTask.Unmarshal(m, b) return xxx_messageInfo_FetchStandardTask.Unmarshal(m, b)
...@@ -1037,7 +1140,7 @@ func (m *DispatchTaskRequest) Reset() { *m = DispatchTaskRequest{} } ...@@ -1037,7 +1140,7 @@ func (m *DispatchTaskRequest) Reset() { *m = DispatchTaskRequest{} }
func (m *DispatchTaskRequest) String() string { return proto.CompactTextString(m) } func (m *DispatchTaskRequest) String() string { return proto.CompactTextString(m) }
func (*DispatchTaskRequest) ProtoMessage() {} func (*DispatchTaskRequest) ProtoMessage() {}
func (*DispatchTaskRequest) Descriptor() ([]byte, []int) { func (*DispatchTaskRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{17} return fileDescriptor_810ae261dc8e2975, []int{20}
} }
func (m *DispatchTaskRequest) XXX_Unmarshal(b []byte) error { func (m *DispatchTaskRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DispatchTaskRequest.Unmarshal(m, b) return xxx_messageInfo_DispatchTaskRequest.Unmarshal(m, b)
...@@ -1083,7 +1186,7 @@ func (m *DispatchTaskResponse) Reset() { *m = DispatchTaskResponse{} } ...@@ -1083,7 +1186,7 @@ func (m *DispatchTaskResponse) Reset() { *m = DispatchTaskResponse{} }
func (m *DispatchTaskResponse) String() string { return proto.CompactTextString(m) } func (m *DispatchTaskResponse) String() string { return proto.CompactTextString(m) }
func (*DispatchTaskResponse) ProtoMessage() {} func (*DispatchTaskResponse) ProtoMessage() {}
func (*DispatchTaskResponse) Descriptor() ([]byte, []int) { func (*DispatchTaskResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{18} return fileDescriptor_810ae261dc8e2975, []int{21}
} }
func (m *DispatchTaskResponse) XXX_Unmarshal(b []byte) error { func (m *DispatchTaskResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DispatchTaskResponse.Unmarshal(m, b) return xxx_messageInfo_DispatchTaskResponse.Unmarshal(m, b)
...@@ -1127,7 +1230,7 @@ func (m *ManagerListRequest) Reset() { *m = ManagerListRequest{} } ...@@ -1127,7 +1230,7 @@ func (m *ManagerListRequest) Reset() { *m = ManagerListRequest{} }
func (m *ManagerListRequest) String() string { return proto.CompactTextString(m) } func (m *ManagerListRequest) String() string { return proto.CompactTextString(m) }
func (*ManagerListRequest) ProtoMessage() {} func (*ManagerListRequest) ProtoMessage() {}
func (*ManagerListRequest) Descriptor() ([]byte, []int) { func (*ManagerListRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{19} return fileDescriptor_810ae261dc8e2975, []int{22}
} }
func (m *ManagerListRequest) XXX_Unmarshal(b []byte) error { func (m *ManagerListRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ManagerListRequest.Unmarshal(m, b) return xxx_messageInfo_ManagerListRequest.Unmarshal(m, b)
...@@ -1158,7 +1261,7 @@ func (m *ManagerListResponse) Reset() { *m = ManagerListResponse{} } ...@@ -1158,7 +1261,7 @@ func (m *ManagerListResponse) Reset() { *m = ManagerListResponse{} }
func (m *ManagerListResponse) String() string { return proto.CompactTextString(m) } func (m *ManagerListResponse) String() string { return proto.CompactTextString(m) }
func (*ManagerListResponse) ProtoMessage() {} func (*ManagerListResponse) ProtoMessage() {}
func (*ManagerListResponse) Descriptor() ([]byte, []int) { func (*ManagerListResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_810ae261dc8e2975, []int{20} return fileDescriptor_810ae261dc8e2975, []int{23}
} }
func (m *ManagerListResponse) XXX_Unmarshal(b []byte) error { func (m *ManagerListResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ManagerListResponse.Unmarshal(m, b) return xxx_messageInfo_ManagerListResponse.Unmarshal(m, b)
...@@ -1195,7 +1298,10 @@ func init() { ...@@ -1195,7 +1298,10 @@ func init() {
proto.RegisterType((*DeviceUsageRequest)(nil), "nodemanager.v1.DeviceUsageRequest") proto.RegisterType((*DeviceUsageRequest)(nil), "nodemanager.v1.DeviceUsageRequest")
proto.RegisterType((*DeviceUsageResponse)(nil), "nodemanager.v1.DeviceUsageResponse") proto.RegisterType((*DeviceUsageResponse)(nil), "nodemanager.v1.DeviceUsageResponse")
proto.RegisterType((*DeviceInfoRequest)(nil), "nodemanager.v1.DeviceInfoRequest") proto.RegisterType((*DeviceInfoRequest)(nil), "nodemanager.v1.DeviceInfoRequest")
proto.RegisterType((*DeviceInfoResponse)(nil), "nodemanager.v1.DeviceInfoResponse") proto.RegisterType((*DeviceInfoMessage)(nil), "nodemanager.v1.DeviceInfoMessage")
proto.RegisterType((*RegisteMessage)(nil), "nodemanager.v1.RegisteMessage")
proto.RegisterType((*NodeInfoRequest)(nil), "nodemanager.v1.NodeInfoRequest")
proto.RegisterType((*NodeInfoResponse)(nil), "nodemanager.v1.NodeInfoResponse")
proto.RegisterType((*DeviceUsage)(nil), "nodemanager.v1.DeviceUsage") proto.RegisterType((*DeviceUsage)(nil), "nodemanager.v1.DeviceUsage")
proto.RegisterType((*StatusResponse)(nil), "nodemanager.v1.StatusResponse") proto.RegisterType((*StatusResponse)(nil), "nodemanager.v1.StatusResponse")
proto.RegisterType((*PushTaskMessage)(nil), "nodemanager.v1.PushTaskMessage") proto.RegisterType((*PushTaskMessage)(nil), "nodemanager.v1.PushTaskMessage")
...@@ -1214,84 +1320,86 @@ func init() { ...@@ -1214,84 +1320,86 @@ func init() {
} }
var fileDescriptor_810ae261dc8e2975 = []byte{ var fileDescriptor_810ae261dc8e2975 = []byte{
// 1258 bytes of a gzipped FileDescriptorProto // 1281 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x56, 0xdd, 0x72, 0xdb, 0x44, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcb, 0x8e, 0x1b, 0x45,
0x14, 0xae, 0x7f, 0xe2, 0xc4, 0xc7, 0x89, 0x6c, 0xaf, 0x4d, 0x31, 0x29, 0xa5, 0xa9, 0x3a, 0x4c, 0x1b, 0x8d, 0xed, 0xb9, 0xd8, 0x9f, 0x67, 0xda, 0x76, 0xd9, 0x7f, 0x7e, 0x33, 0x21, 0x64, 0xd2,
0xd3, 0x01, 0xec, 0x3a, 0xfc, 0x0c, 0xd3, 0x5e, 0x91, 0xa6, 0xad, 0x0b, 0x24, 0x35, 0x4a, 0x09, 0x11, 0x62, 0x22, 0x88, 0x1d, 0x0f, 0x17, 0xa1, 0x64, 0x81, 0x98, 0x4c, 0x12, 0x47, 0x30, 0x89,
0x1d, 0xa6, 0x83, 0x66, 0x2d, 0xad, 0x6d, 0x8d, 0x23, 0xad, 0xd0, 0xae, 0x02, 0x7e, 0x1d, 0x2e, 0xe9, 0x09, 0x21, 0x42, 0x51, 0x5a, 0xe5, 0xee, 0xb2, 0xdd, 0x72, 0xba, 0xab, 0xe9, 0xaa, 0x1e,
0xb9, 0x64, 0xb8, 0xe4, 0x09, 0x98, 0xe1, 0x8e, 0x07, 0x60, 0xb8, 0xe4, 0x96, 0x17, 0x60, 0xf6, 0xf0, 0xeb, 0xb0, 0x64, 0xcd, 0x92, 0x27, 0x40, 0x62, 0xc7, 0x13, 0xb0, 0x60, 0xc1, 0x43, 0x20,
0x47, 0xb6, 0x24, 0x3b, 0xe9, 0x0c, 0x77, 0xda, 0x6f, 0xbf, 0xfd, 0x76, 0xf7, 0x9c, 0x6f, 0xcf, 0x54, 0x97, 0x76, 0x5f, 0x6c, 0x0f, 0x2b, 0x76, 0xae, 0x53, 0xa7, 0x4e, 0xd5, 0x77, 0x77, 0xc3,
0x11, 0xbc, 0x1b, 0x50, 0x97, 0xf8, 0x38, 0xc0, 0x13, 0x12, 0xf5, 0x2e, 0xfa, 0xbd, 0x88, 0x7c, 0xbb, 0x01, 0x75, 0x89, 0x8f, 0x03, 0x3c, 0x25, 0x51, 0xff, 0x62, 0xd0, 0x8f, 0xc8, 0x77, 0x31,
0x1f, 0x13, 0xc6, 0xed, 0x88, 0xb0, 0x90, 0x06, 0x8c, 0x74, 0xc3, 0x88, 0x72, 0x8a, 0x8c, 0x14, 0x61, 0xdc, 0x8e, 0x08, 0x0b, 0x69, 0xc0, 0x48, 0x2f, 0x8c, 0x28, 0xa7, 0xc8, 0xc8, 0xd0, 0x7a,
0xad, 0x7b, 0xd1, 0xdf, 0xad, 0x8f, 0x30, 0x23, 0xbd, 0x09, 0x9d, 0x50, 0x45, 0xd8, 0xbd, 0x2e, 0x17, 0x83, 0x83, 0xc6, 0x18, 0x33, 0xd2, 0x9f, 0xd2, 0x29, 0x55, 0x84, 0x83, 0xab, 0x12, 0xb8,
0x81, 0x8b, 0x7e, 0x8f, 0xba, 0x73, 0xc6, 0x48, 0xcc, 0x34, 0x7e, 0x73, 0x45, 0x9f, 0xd1, 0x38, 0x18, 0xf4, 0xa9, 0xbb, 0x60, 0x8c, 0xc4, 0x4c, 0xe3, 0xd7, 0x57, 0xf4, 0x19, 0x8d, 0x23, 0x47,
0x72, 0xb4, 0xae, 0xf9, 0x6f, 0x19, 0x76, 0xbe, 0xa1, 0xd1, 0x8c, 0x44, 0xc7, 0x84, 0x31, 0x3c, 0xeb, 0x9a, 0x7f, 0x6f, 0xc3, 0xfe, 0x37, 0x34, 0x9a, 0x93, 0xe8, 0x8c, 0x30, 0x86, 0xa7, 0x04,
0x21, 0xc8, 0x02, 0x34, 0x25, 0x38, 0xe2, 0x23, 0x82, 0x97, 0xa7, 0xe8, 0x14, 0xf6, 0x0a, 0xfb, 0x59, 0x80, 0x66, 0x04, 0x47, 0x7c, 0x4c, 0x70, 0xfa, 0x8a, 0x6e, 0xe9, 0xb0, 0x74, 0x54, 0x3f,
0xb5, 0x83, 0xdb, 0xdd, 0xec, 0x31, 0xba, 0x83, 0x84, 0x69, 0x69, 0xe2, 0xe0, 0x9a, 0xd5, 0x9c, 0xbe, 0xd9, 0xcb, 0x3f, 0xa3, 0x37, 0x4c, 0x98, 0x96, 0x26, 0x0e, 0xaf, 0x58, 0xad, 0x59, 0x11,
0xe6, 0x41, 0x34, 0x04, 0xc4, 0xe2, 0x91, 0xef, 0x71, 0x9b, 0x63, 0x36, 0x13, 0xaa, 0xf1, 0x39, 0x44, 0x23, 0x40, 0x2c, 0x1e, 0xfb, 0x1e, 0xb7, 0x39, 0x66, 0x73, 0xa1, 0x1a, 0xbf, 0xe1, 0xdd,
0xef, 0x14, 0xa5, 0xe6, 0x5e, 0x5e, 0xf3, 0x54, 0x32, 0x5f, 0x60, 0x36, 0xb3, 0x24, 0x6f, 0x70, 0xb2, 0xd4, 0x3c, 0x2c, 0x6a, 0x9e, 0x4b, 0xe6, 0x73, 0xcc, 0xe6, 0x96, 0xe4, 0x0d, 0xaf, 0x58,
0xcd, 0x6a, 0xb0, 0x1c, 0x86, 0x3e, 0x85, 0x0a, 0xe3, 0x98, 0xc7, 0xac, 0x53, 0x92, 0x2a, 0xef, 0x4d, 0x56, 0xc0, 0xd0, 0xa7, 0xb0, 0xc3, 0x38, 0xe6, 0x31, 0xeb, 0x56, 0xa4, 0xca, 0x3b, 0x2b,
0xac, 0xa8, 0xc8, 0xd9, 0xd4, 0xb1, 0x34, 0x1f, 0x3d, 0x86, 0x9a, 0x4b, 0x2e, 0x3c, 0x87, 0xd8, 0x2a, 0x72, 0x37, 0xf3, 0x2c, 0xcd, 0x47, 0xa7, 0x50, 0x77, 0xc9, 0x85, 0xe7, 0x10, 0xdb, 0x0b,
0x5e, 0x30, 0xa6, 0x9d, 0xb2, 0x5c, 0x6e, 0xe6, 0x97, 0x1f, 0x49, 0xca, 0xb3, 0x60, 0x4c, 0x53, 0x26, 0xb4, 0xbb, 0xb5, 0xde, 0xb0, 0x53, 0x49, 0x79, 0x12, 0x4c, 0xa8, 0xf6, 0xcb, 0xf0, 0x8a,
0x12, 0xe0, 0x2e, 0x50, 0x34, 0x80, 0x6d, 0x2d, 0x13, 0x8b, 0xb0, 0x75, 0x36, 0xa4, 0xce, 0x9d, 0x05, 0xee, 0x12, 0x44, 0x43, 0xd8, 0xd3, 0x2a, 0xb1, 0xd8, 0xed, 0x6e, 0x4b, 0x99, 0x5b, 0xeb,
0xf5, 0x3a, 0x5f, 0x0b, 0x4a, 0x4a, 0x48, 0x9f, 0x40, 0xc2, 0xe8, 0x19, 0xd4, 0x27, 0x94, 0xba, 0x65, 0xbe, 0x16, 0x94, 0xcc, 0x53, 0xf4, 0x03, 0x24, 0x8c, 0x9e, 0x40, 0x63, 0x4a, 0xa9, 0x3b,
0xa3, 0x39, 0xb1, 0x7d, 0x95, 0x83, 0x4e, 0x65, 0xfd, 0x9d, 0x9e, 0x2a, 0x9a, 0xce, 0xd4, 0xe0, 0x5e, 0x10, 0xdb, 0x57, 0x57, 0x75, 0x77, 0xd6, 0x9b, 0xf4, 0x58, 0xd1, 0xd2, 0x07, 0x19, 0xd3,
0x9a, 0x65, 0x4c, 0x32, 0x08, 0x7a, 0x02, 0xdb, 0x49, 0x7e, 0x6d, 0x1f, 0x87, 0x9d, 0xcd, 0xf5, 0x1c, 0x82, 0x1e, 0xc1, 0x5e, 0x12, 0x5e, 0xdb, 0xc7, 0x61, 0x77, 0x77, 0xbd, 0x6d, 0xca, 0xc1,
0x59, 0x53, 0x11, 0xb6, 0x34, 0xf3, 0x18, 0x87, 0xe2, 0x48, 0xd1, 0x72, 0x88, 0x4e, 0xa1, 0x35, 0x96, 0x66, 0x9e, 0xe1, 0x50, 0x3c, 0x29, 0x4a, 0x97, 0xe8, 0x1c, 0xda, 0x13, 0xc2, 0x9d, 0x99,
0x26, 0xdc, 0x99, 0xda, 0x8c, 0xe3, 0xc0, 0xc5, 0x91, 0x2b, 0xf3, 0xd6, 0xd9, 0x5a, 0x2f, 0xf7, 0xcd, 0x38, 0x0e, 0x5c, 0x1c, 0xb9, 0x32, 0x6c, 0xdd, 0xea, 0x7a, 0xb9, 0x47, 0x82, 0x7a, 0xae,
0x44, 0x50, 0x4f, 0x35, 0x53, 0xe4, 0x48, 0x98, 0x60, 0x9c, 0x07, 0x0f, 0xab, 0xb0, 0xa9, 0xef, 0x99, 0x22, 0x44, 0x22, 0x07, 0x26, 0x45, 0x50, 0xd8, 0x19, 0x91, 0xa9, 0xc7, 0x78, 0x6a, 0x67,
0x67, 0xfe, 0x52, 0x06, 0xe3, 0x58, 0x09, 0x24, 0x47, 0x7f, 0x0e, 0xcd, 0xb4, 0xed, 0xe4, 0x23, 0x6d, 0xbd, 0x9d, 0x96, 0xa2, 0x65, 0xec, 0x8c, 0x72, 0x08, 0xfa, 0x0c, 0x6a, 0xe2, 0x88, 0x0a,
0xd0, 0xae, 0xdb, 0xbb, 0xc2, 0x75, 0x92, 0x27, 0x1c, 0x32, 0xcd, 0x61, 0xe8, 0x18, 0x9a, 0x61, 0x20, 0xac, 0xcf, 0xa2, 0xa7, 0xd4, 0x95, 0x91, 0xca, 0xb8, 0xbd, 0x1a, 0x68, 0xec, 0xa4, 0x06,
0xcc, 0xa6, 0xca, 0x71, 0x49, 0x60, 0x95, 0xe5, 0x6e, 0xe5, 0x05, 0x87, 0x31, 0x9b, 0x8a, 0x33, 0xbb, 0xfa, 0x0d, 0xe6, 0x9f, 0x15, 0x30, 0xce, 0xd4, 0xb1, 0x44, 0xfe, 0x19, 0xb4, 0xb2, 0x15,
0x2e, 0x23, 0x5b, 0x0f, 0xb3, 0x90, 0x94, 0x8b, 0x28, 0x1d, 0x67, 0x1c, 0x5c, 0xba, 0x44, 0x4e, 0x20, 0xeb, 0x51, 0x17, 0xc0, 0xe1, 0x25, 0x05, 0x20, 0x79, 0x22, 0x59, 0x67, 0x05, 0x0c, 0x9d,
0x10, 0x33, 0x06, 0xae, 0x87, 0x59, 0x08, 0x3d, 0x01, 0x43, 0xf9, 0x71, 0x71, 0x57, 0x65, 0xc4, 0x41, 0x2b, 0x8c, 0xd9, 0x4c, 0x25, 0x7f, 0x62, 0xbc, 0xca, 0xfe, 0x1b, 0x45, 0xc1, 0x51, 0xcc,
0x9b, 0x97, 0xf9, 0x38, 0xb9, 0xe8, 0x0e, 0x4b, 0x03, 0xe8, 0x73, 0x30, 0xb4, 0x0d, 0x13, 0x9d, 0x66, 0xc2, 0x5f, 0xa9, 0xf5, 0x8d, 0x30, 0x0f, 0x49, 0xb9, 0x88, 0xd2, 0x49, 0xae, 0x98, 0x2a,
0x8d, 0xf5, 0x49, 0x4a, 0x1b, 0x7a, 0xa1, 0xa5, 0x96, 0x26, 0x5a, 0x4f, 0x73, 0x96, 0xae, 0x5c, 0x1b, 0xe4, 0x04, 0x31, 0x57, 0x4b, 0x8d, 0x30, 0x0f, 0xa1, 0x47, 0x60, 0xa8, 0xd2, 0x58, 0xda,
0xf5, 0x34, 0xb4, 0xa5, 0x13, 0xa9, 0xd7, 0x39, 0x7a, 0xf3, 0xff, 0x39, 0x3a, 0x6d, 0x9a, 0x7d, 0xaa, 0x6a, 0xe2, 0xfa, 0xa6, 0x92, 0x4a, 0x0c, 0xdd, 0x67, 0x59, 0x00, 0x3d, 0x5e, 0x5b, 0x12,
0x30, 0xb2, 0x74, 0x74, 0x1d, 0x2a, 0x11, 0xc1, 0x8c, 0x06, 0xd2, 0x28, 0x55, 0x4b, 0x8f, 0xcc, 0xe6, 0xa5, 0x25, 0x91, 0x48, 0xfd, 0x47, 0x15, 0x91, 0x0d, 0xf4, 0x11, 0x18, 0x79, 0x3a, 0xba,
0xfb, 0xd0, 0xc8, 0x5b, 0x04, 0xbd, 0x0d, 0x55, 0xee, 0xf9, 0x84, 0x71, 0xec, 0x87, 0x92, 0x5e, 0x0a, 0x3b, 0x11, 0xc1, 0x8c, 0x06, 0x32, 0xb8, 0x35, 0x4b, 0xaf, 0xcc, 0xbb, 0xd0, 0x2c, 0x86,
0xb6, 0x96, 0x80, 0xd9, 0x87, 0xe6, 0x4a, 0x29, 0x7b, 0xcd, 0x92, 0x3a, 0xec, 0x64, 0x72, 0x63, 0x15, 0xbd, 0x0d, 0x35, 0xee, 0xf9, 0x84, 0x71, 0xec, 0x87, 0x92, 0xbe, 0x65, 0xa5, 0x80, 0x39,
0xb6, 0x01, 0xad, 0x86, 0xc6, 0x1c, 0x40, 0x6b, 0x4d, 0x0d, 0x40, 0x7d, 0xd8, 0x50, 0x41, 0x2e, 0x80, 0xd6, 0x4a, 0x27, 0xfc, 0x97, 0x23, 0x0d, 0xd8, 0xcf, 0xf9, 0xd3, 0xec, 0x00, 0x5a, 0x75,
0xec, 0x95, 0xf6, 0x6b, 0x07, 0x37, 0xae, 0x0a, 0xb2, 0x62, 0x9a, 0x2d, 0x68, 0xae, 0x24, 0xd1, 0x8d, 0x39, 0x84, 0xf6, 0x9a, 0x1e, 0x82, 0x06, 0xb0, 0xad, 0x9c, 0x5c, 0x3a, 0xac, 0x1c, 0xd5,
0xfc, 0xab, 0x90, 0xec, 0x9a, 0xae, 0x55, 0xe8, 0x36, 0x6c, 0xfb, 0x5e, 0x40, 0x22, 0x3b, 0x8c, 0x8f, 0xaf, 0x5d, 0xe6, 0x64, 0xc5, 0x34, 0xdb, 0xd0, 0x4a, 0x9b, 0x5a, 0x22, 0xcf, 0xb3, 0x60,
0x47, 0x33, 0x32, 0xd7, 0xf1, 0xa9, 0x49, 0x6c, 0x28, 0x21, 0x74, 0x17, 0xea, 0x23, 0x12, 0x90, 0xe2, 0x97, 0x8f, 0x60, 0x57, 0x85, 0x43, 0x34, 0x57, 0x21, 0x7f, 0xb0, 0xb9, 0x3b, 0x5a, 0x09,
0xb1, 0xc7, 0x6d, 0xec, 0xba, 0x11, 0x61, 0x4c, 0xbe, 0x8e, 0xaa, 0x65, 0x68, 0xf8, 0x33, 0x85, 0x15, 0xdd, 0x86, 0xa6, 0x0e, 0x3f, 0xf3, 0xa6, 0x01, 0xe6, 0x71, 0x44, 0x64, 0x22, 0xed, 0x59,
0xa2, 0x8f, 0x60, 0x53, 0x25, 0x57, 0xd4, 0x5a, 0x71, 0xd8, 0xdd, 0x2b, 0xbc, 0x95, 0x50, 0xd1, 0x0d, 0x85, 0x9f, 0x27, 0xb0, 0x79, 0x07, 0x8c, 0x7c, 0x8d, 0xa3, 0x6b, 0x50, 0x4b, 0x9a, 0x72,
0x3d, 0x68, 0x68, 0x33, 0x31, 0x6f, 0x12, 0x60, 0x1e, 0x47, 0x44, 0x5a, 0x7c, 0xdb, 0xaa, 0x2b, 0xa8, 0xa3, 0x51, 0xd5, 0xdd, 0x36, 0x34, 0x5b, 0xd0, 0x48, 0xab, 0x59, 0xbd, 0xfb, 0x35, 0x34,
0xfc, 0x34, 0x81, 0xd1, 0x4d, 0x80, 0xa4, 0x22, 0x87, 0xac, 0xb3, 0xb1, 0x57, 0xda, 0xaf, 0x5a, 0x8b, 0x05, 0x8e, 0x6e, 0xc2, 0x9e, 0xef, 0x05, 0x24, 0xb2, 0xc3, 0x78, 0x3c, 0x27, 0x0b, 0x2d,
0x55, 0x5d, 0x6a, 0x43, 0x66, 0x7e, 0x05, 0xb5, 0x54, 0x34, 0xd0, 0xad, 0x45, 0xfd, 0xe6, 0xf3, 0x53, 0x97, 0xd8, 0x48, 0x42, 0xe8, 0x3d, 0x68, 0x8c, 0x49, 0x40, 0x26, 0x1e, 0xb7, 0xb1, 0xeb,
0x90, 0xe8, 0x9b, 0x69, 0x81, 0x17, 0xf3, 0x50, 0xde, 0x3d, 0x63, 0xe3, 0xa2, 0xcc, 0x5c, 0xda, 0x46, 0x84, 0x31, 0x59, 0x86, 0x35, 0xcb, 0xd0, 0xf0, 0xe7, 0x0a, 0x35, 0xbf, 0x82, 0x7a, 0xc6,
0xa0, 0xe6, 0xc7, 0x60, 0x64, 0xfb, 0x03, 0xba, 0x03, 0x3b, 0xc9, 0x71, 0x55, 0x5b, 0x29, 0xc8, 0x85, 0xe8, 0xc6, 0x72, 0x66, 0xf0, 0x45, 0x48, 0xb4, 0xb2, 0x1e, 0x07, 0xcf, 0x17, 0xa1, 0xbc,
0xb3, 0x6a, 0x25, 0x45, 0x36, 0xff, 0x28, 0x40, 0x3d, 0x57, 0x2a, 0xd0, 0x9b, 0xb0, 0x29, 0x2b, 0x3b, 0x97, 0xfb, 0x65, 0x19, 0xee, 0x6c, 0x56, 0x9b, 0x1f, 0x83, 0x91, 0x9f, 0x49, 0xe8, 0x16,
0x82, 0xe7, 0x26, 0x26, 0x14, 0xc3, 0x67, 0x2e, 0xea, 0x42, 0x55, 0x4e, 0xcc, 0xbc, 0xc0, 0x95, 0xec, 0x27, 0x1e, 0x53, 0xa3, 0xac, 0x24, 0xdd, 0xa5, 0x95, 0x14, 0xd9, 0xfc, 0xad, 0x04, 0x8d,
0x67, 0x30, 0x0e, 0x9a, 0x5d, 0xd1, 0xa4, 0x45, 0xc4, 0x84, 0xc2, 0x17, 0x5e, 0xe0, 0x5a, 0x5b, 0x42, 0x4f, 0x40, 0xff, 0x87, 0x5d, 0x59, 0xfa, 0x9e, 0x9b, 0x64, 0xae, 0x58, 0x3e, 0x71, 0x51,
0x5c, 0x7f, 0xa1, 0x5d, 0xd8, 0xfa, 0x81, 0x46, 0xb3, 0x73, 0x8a, 0x5d, 0x59, 0x57, 0xca, 0xd6, 0x0f, 0x6a, 0x72, 0x63, 0xee, 0x05, 0xae, 0x7c, 0x83, 0x71, 0xdc, 0xea, 0x89, 0x3f, 0x06, 0x22,
0x62, 0x8c, 0xde, 0x02, 0xc9, 0xb3, 0x1d, 0xdf, 0x95, 0x41, 0xac, 0x5a, 0x72, 0xd3, 0x47, 0xbe, 0x68, 0x42, 0xe1, 0x0b, 0x2f, 0x70, 0xad, 0x2a, 0xd7, 0xbf, 0xd0, 0x01, 0x54, 0xbf, 0xa7, 0xd1,
0x2b, 0x82, 0x27, 0xa7, 0x42, 0x1c, 0x61, 0x5f, 0x3e, 0xfe, 0x6d, 0x4b, 0x6e, 0x3c, 0x14, 0x00, 0xfc, 0x0d, 0xc5, 0xae, 0x6c, 0x20, 0x5b, 0xd6, 0x72, 0x8d, 0xde, 0x02, 0xc9, 0xb3, 0x1d, 0xdf,
0xba, 0xa1, 0x4f, 0x21, 0x63, 0x55, 0x51, 0xb2, 0x02, 0x10, 0x91, 0x32, 0x7f, 0x2d, 0x42, 0x23, 0x95, 0x71, 0xac, 0x59, 0xf2, 0xd2, 0x07, 0xbe, 0x8b, 0xae, 0x03, 0xc8, 0xad, 0x10, 0x47, 0xd8,
0xdf, 0x6d, 0x2f, 0xbf, 0x50, 0x0f, 0x5a, 0x0e, 0x0d, 0x38, 0x96, 0xbe, 0x5a, 0x26, 0xb5, 0x28, 0x97, 0x75, 0xbe, 0x67, 0xc9, 0x8b, 0x47, 0x02, 0x10, 0xc1, 0x94, 0xdb, 0xd2, 0x57, 0x3b, 0x4a,
0xb7, 0x44, 0x8b, 0xa9, 0x65, 0x5e, 0xef, 0x42, 0xdd, 0xcf, 0x91, 0x4b, 0x92, 0x6c, 0xf8, 0x59, 0x56, 0x00, 0xc2, 0x53, 0xe6, 0xcf, 0x65, 0x68, 0x16, 0x27, 0xfc, 0x66, 0x83, 0xfa, 0xd0, 0x76,
0xe2, 0xfb, 0x80, 0x52, 0x55, 0xd5, 0x9e, 0x12, 0xec, 0x92, 0x48, 0xbb, 0xa5, 0xc1, 0x97, 0x75, 0x68, 0xc0, 0xb1, 0x8c, 0x6b, 0x9a, 0x57, 0x65, 0x79, 0x25, 0x5a, 0x6e, 0x2d, 0x53, 0x4b, 0x44,
0x54, 0xe2, 0x68, 0x1f, 0x1a, 0x69, 0xf6, 0x88, 0xba, 0x73, 0x7d, 0x6f, 0x63, 0xc9, 0x3d, 0xa4, 0xd8, 0x2f, 0x90, 0x2b, 0x92, 0x6c, 0xf8, 0x79, 0xe2, 0x07, 0x80, 0x32, 0xed, 0xd3, 0x9e, 0x11,
0xee, 0x5c, 0x38, 0xc1, 0x63, 0x36, 0x8b, 0x1d, 0x87, 0x30, 0x46, 0x5c, 0x79, 0xff, 0x2d, 0xab, 0xec, 0x92, 0x48, 0x27, 0x6c, 0x93, 0xa7, 0x0d, 0x53, 0xe2, 0xe8, 0x08, 0x9a, 0x59, 0xf6, 0x98,
0xe6, 0xb1, 0xd3, 0x04, 0x42, 0x07, 0xf0, 0x86, 0x14, 0x23, 0x3f, 0x12, 0x27, 0xe6, 0xc4, 0x76, 0xba, 0x0b, 0x6d, 0xb7, 0x91, 0x72, 0x4f, 0xa8, 0xbb, 0x10, 0x99, 0xe0, 0x31, 0x9b, 0xc5, 0x8e,
0xe3, 0x08, 0x73, 0x8f, 0x06, 0xb2, 0x60, 0x95, 0xad, 0x96, 0x98, 0x7c, 0xac, 0xe6, 0x8e, 0xf4, 0x43, 0x18, 0x23, 0xae, 0xb4, 0xbf, 0x6a, 0xd5, 0x3d, 0x76, 0x9e, 0x40, 0xe8, 0x18, 0xfe, 0x27,
0x94, 0xf9, 0x09, 0x34, 0x57, 0x3a, 0xa8, 0xd8, 0x2b, 0xd3, 0x7a, 0x95, 0x7f, 0xd2, 0x5d, 0xd5, 0xc5, 0xc8, 0x0f, 0xc4, 0x89, 0x39, 0xb1, 0xdd, 0x38, 0xc2, 0xdc, 0xa3, 0x81, 0x9c, 0xd7, 0x5b,
0xfc, 0x4d, 0xd8, 0x27, 0xd7, 0x07, 0x2e, 0x8d, 0x76, 0xda, 0x0e, 0xc5, 0x9c, 0x1d, 0x32, 0x85, 0x56, 0x5b, 0x6c, 0x3e, 0x54, 0x7b, 0xa7, 0x7a, 0xcb, 0xfc, 0x04, 0x5a, 0x2b, 0x63, 0x5b, 0xdc,
0xa9, 0x94, 0x2b, 0x4c, 0xe8, 0x3d, 0x68, 0xea, 0xb7, 0xb9, 0xf2, 0xf4, 0x1a, 0x7a, 0x62, 0x19, 0x95, 0x9b, 0xf7, 0x2a, 0x7f, 0xb2, 0xa3, 0xdc, 0xfc, 0x45, 0xa4, 0x4f, 0xa1, 0xe1, 0x6f, 0xf4,
0xfa, 0x7b, 0xd0, 0x58, 0x26, 0x55, 0x17, 0x0b, 0x15, 0xcc, 0xfa, 0x02, 0x57, 0x05, 0xc3, 0xbc, 0x76, 0x36, 0x1d, 0xca, 0x85, 0x74, 0xc8, 0x75, 0xb3, 0x4a, 0xa1, 0x9b, 0xa1, 0xf7, 0xa1, 0xa5,
0x0f, 0xcd, 0x95, 0x4e, 0x9f, 0xf5, 0x57, 0x21, 0xe7, 0xaf, 0xef, 0xa0, 0x75, 0xe4, 0xb1, 0x10, 0xdb, 0xc3, 0x4a, 0xf5, 0x37, 0xf5, 0x46, 0xea, 0xfa, 0xdb, 0xd0, 0x4c, 0x83, 0xaa, 0x8b, 0x55,
0x73, 0x67, 0xaa, 0xae, 0xac, 0x4a, 0x71, 0x5f, 0xaf, 0x71, 0x31, 0xc7, 0xba, 0xc5, 0xb7, 0x33, 0x39, 0xb3, 0xb1, 0xc4, 0x55, 0xc1, 0x9a, 0x77, 0xa1, 0xb5, 0xf2, 0xf7, 0x22, 0x9f, 0x5f, 0xa5,
0x2f, 0xe3, 0x11, 0x0d, 0x38, 0x09, 0xb8, 0x52, 0x3a, 0xc2, 0x1c, 0xa3, 0x36, 0x6c, 0x48, 0xcf, 0x42, 0x7e, 0xbd, 0x86, 0xf6, 0xa9, 0xc7, 0x42, 0xcc, 0x9d, 0x99, 0x32, 0x59, 0xf5, 0xef, 0x81,
0xe8, 0x12, 0xa5, 0x06, 0xe6, 0x63, 0x68, 0x67, 0xf5, 0xf5, 0x63, 0xbe, 0x34, 0xa8, 0xeb, 0x65, 0x3e, 0xe3, 0x62, 0x8e, 0xf5, 0x2c, 0xef, 0xe4, 0x2a, 0xe3, 0x01, 0x0d, 0x38, 0x09, 0xb8, 0x52,
0xda, 0x80, 0xf4, 0xcf, 0xc8, 0x97, 0x1e, 0x4b, 0x1a, 0x86, 0x69, 0x41, 0x2b, 0x83, 0x6a, 0xed, 0x3a, 0xc5, 0x1c, 0xa3, 0x0e, 0x6c, 0xcb, 0x9c, 0xd1, 0x2d, 0x42, 0x2d, 0xcc, 0x87, 0xd0, 0xc9,
0x87, 0xb0, 0xa5, 0x83, 0xc8, 0x74, 0xed, 0x5e, 0x69, 0xff, 0x27, 0xd4, 0x25, 0x7a, 0xa9, 0xac, 0xeb, 0xeb, 0x62, 0xde, 0xe8, 0xd4, 0xf5, 0x32, 0x1d, 0x40, 0xfa, 0x5f, 0xc7, 0x97, 0x1e, 0x4b,
0x89, 0x8b, 0x05, 0x87, 0x7f, 0x16, 0x00, 0x39, 0xd4, 0xcf, 0x2d, 0x38, 0x6c, 0xeb, 0x3d, 0x93, 0xa6, 0x8c, 0x69, 0x41, 0x3b, 0x87, 0x6a, 0xed, 0xfb, 0x50, 0xd5, 0x4e, 0x64, 0xba, 0xe1, 0xdf,
0x4d, 0x86, 0xe2, 0xd7, 0x7c, 0x58, 0xf8, 0xf6, 0xf9, 0xc4, 0xe3, 0xd3, 0x78, 0xd4, 0x75, 0xa8, 0x58, 0xf7, 0x77, 0x47, 0x1f, 0x95, 0x4d, 0x71, 0x79, 0xe0, 0xe4, 0xf7, 0x12, 0x20, 0x87, 0xfa,
0xbf, 0xf8, 0xad, 0x5f, 0x7c, 0x7c, 0x20, 0x7f, 0xe0, 0x1d, 0x7a, 0xde, 0x9b, 0x90, 0xa0, 0x27, 0x85, 0x03, 0x27, 0x1d, 0x7d, 0x67, 0x72, 0xc9, 0x48, 0x7c, 0x0e, 0x8c, 0x4a, 0xdf, 0x3e, 0x9b,
0x07, 0xbd, 0x09, 0xed, 0x65, 0x7f, 0xf7, 0x1f, 0xa6, 0x86, 0x17, 0xfd, 0x9f, 0x8a, 0xa5, 0x93, 0x7a, 0x7c, 0x16, 0x8f, 0x7b, 0x0e, 0xf5, 0x97, 0x9f, 0x12, 0xcb, 0x1f, 0x77, 0xe4, 0x47, 0x83,
0x97, 0x2f, 0x7f, 0x2e, 0x1a, 0x27, 0xa9, 0xfd, 0xcf, 0xfa, 0xbf, 0x67, 0x80, 0x57, 0x67, 0xfd, 0x43, 0xdf, 0xf4, 0xa7, 0x24, 0xe8, 0xcb, 0x45, 0x7f, 0x4a, 0xfb, 0xf9, 0x4f, 0x8c, 0xfb, 0x99,
0xbf, 0x8b, 0xbb, 0x59, 0xe0, 0xd5, 0xd3, 0xe1, 0xe1, 0x31, 0xe1, 0x58, 0x64, 0xec, 0x9f, 0x62, 0xe5, 0xc5, 0xe0, 0xc7, 0x72, 0xe5, 0xe9, 0xcb, 0x97, 0x3f, 0x95, 0x8d, 0xa7, 0x99, 0xfb, 0x5f,
0x3d, 0x35, 0xf9, 0xe0, 0xc1, 0x59, 0x7f, 0x54, 0x91, 0xbb, 0x7f, 0xf8, 0x5f, 0x00, 0x00, 0x00, 0x0c, 0x7e, 0xcd, 0x01, 0xaf, 0x5e, 0x0c, 0xfe, 0x28, 0x1f, 0xe4, 0x81, 0x57, 0x8f, 0x47, 0x27,
0xff, 0xff, 0x70, 0x1a, 0x0a, 0x05, 0xcc, 0x0c, 0x00, 0x00, 0x67, 0x84, 0x63, 0x11, 0xb1, 0xbf, 0xca, 0x8d, 0xcc, 0xe6, 0xbd, 0x7b, 0x2f, 0x06, 0xe3, 0x1d,
0x79, 0xfb, 0x87, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0xaf, 0xf7, 0xdf, 0xf2, 0x40, 0x0d, 0x00,
0x00,
} }
...@@ -10,11 +10,13 @@ message WorkerMessage { ...@@ -10,11 +10,13 @@ message WorkerMessage {
HeartbeatResponse heartbeat_response = 1; HeartbeatResponse heartbeat_response = 1;
SubmitTaskResult submit_task_result = 2; SubmitTaskResult submit_task_result = 2;
StatusResponse status = 3; StatusResponse status = 3;
DeviceInfoResponse device_info = 4; DeviceInfoMessage device_info = 4;
DeviceUsageResponse device_usage = 5; DeviceUsageResponse device_usage = 5;
GoodbyeMessage goodbye_message = 6; GoodbyeMessage goodbye_message = 6;
SubmitResourceMap resource_map = 7; SubmitResourceMap resource_map = 7;
FetchStandardTask fetch_standard_task = 8; FetchStandardTask fetch_standard_task = 8;
RegisteMessage registe_message = 9;
NodeInfoResponse node_info = 10;
} }
} }
...@@ -24,9 +26,8 @@ message ManagerMessage { ...@@ -24,9 +26,8 @@ message ManagerMessage {
PushTaskMessage push_task_message = 2; PushTaskMessage push_task_message = 2;
ProofTaskResult proof_task_result = 3; ProofTaskResult proof_task_result = 3;
StatusRequest status_request = 4; StatusRequest status_request = 4;
DeviceInfoRequest device_request = 5; DeviceUsageRequest device_usage = 5;
DeviceUsageRequest device_usage = 6; GoodbyeMessage goodbye_message = 6;
GoodbyeMessage goodbye_message = 7;
} }
} }
...@@ -51,16 +52,25 @@ message DeviceUsageRequest { ...@@ -51,16 +52,25 @@ message DeviceUsageRequest {
message DeviceUsageResponse { message DeviceUsageResponse {
repeated DeviceUsage usage = 1; repeated DeviceUsage usage = 1;
} }
message DeviceInfoRequest { message DeviceInfoRequest {
}
message DeviceInfoMessage {
repeated DeviceInfo devices = 3;
bytes device_signature = 4; // 由测试程序对设备信息进行签名
} }
message DeviceInfoResponse { message RegisteMessage {
string device_ip = 1;
}
message NodeInfoRequest {
}
message NodeInfoResponse {
string miner_pubkey = 1; string miner_pubkey = 1;
string benefit_address = 2; string benefit_address = 2;
repeated DeviceInfo devices = 3;
bytes device_signature = 4; // 由测试程序对设备信息进行签名
repeated string device_ips = 5;
} }
message DeviceUsage { message DeviceUsage {
...@@ -69,7 +79,7 @@ message DeviceUsage { ...@@ -69,7 +79,7 @@ message DeviceUsage {
} }
message StatusResponse { message StatusResponse {
bytes device_status = 1; // bitmap bytes device_status = 1; // bitmap for every gpu.
} }
message PushTaskMessage { message PushTaskMessage {
......
...@@ -9,7 +9,7 @@ message NodeManagerInfo { ...@@ -9,7 +9,7 @@ message NodeManagerInfo {
message DeviceInfo { message DeviceInfo {
string device_type = 1; // cpu/gpu/mem string device_type = 1; // cpu/gpu/mem with index, ex: cpu-0, gpu-1, mem-0
string device_model = 2; // 具体型号 rtx-4090 string device_model = 2; // 具体型号 rtx-4090
string device_param = 3; // 内存容量/CPU主频/GPU显存 等等 string device_param = 3; // 内存容量/CPU主频/GPU显存 等等
uint64 device_power = 4; // CPU: hashrate, MEM: size, GPU: 算力, GPUMEM:size uint64 device_power = 4; // CPU: hashrate, MEM: size, GPU: 算力, GPUMEM:size
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment