CN105487929B - A kind of method of camera lens shared data management during Cluster Rendering - Google Patents

A kind of method of camera lens shared data management during Cluster Rendering Download PDF

Info

Publication number
CN105487929B
CN105487929B CN201510810897.9A CN201510810897A CN105487929B CN 105487929 B CN105487929 B CN 105487929B CN 201510810897 A CN201510810897 A CN 201510810897A CN 105487929 B CN105487929 B CN 105487929B
Authority
CN
China
Prior art keywords
rendering
shared data
camera lens
data
slave
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.)
Active
Application number
CN201510810897.9A
Other languages
Chinese (zh)
Other versions
CN105487929A (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.)
Shandong University
Original Assignee
Shandong University
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 Shandong University filed Critical Shandong University
Priority to CN201510810897.9A priority Critical patent/CN105487929B/en
Publication of CN105487929A publication Critical patent/CN105487929A/en
Application granted granted Critical
Publication of CN105487929B publication Critical patent/CN105487929B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a kind of method of camera lens shared data management during Cluster Rendering, it is included under Cluster Rendering environment, each rendering unit is divided into a master node and several slave nodes;Master nodes read in camera lens and shared data and its equilibrium are stored in each slave node of rendering unit, and set up shared data management module respectively in each slave node;During rendering, if the shared data required for a rendering engine is stored in the slave nodes belonging to rendering engine, the shared data of rendering engine request returns directly to the rendering engine by shared data management module;If the shared data required for a rendering engine is stored in other slave nodes, RDMA interface is then set between the slave nodes of the shared data required for the slave nodes belonging to rendering engine and storage, and the shared data of rendering engine request is back to rendering engine by RDMA interface.

Description

A kind of method of camera lens shared data management during Cluster Rendering
Technical field
The present invention relates to shared data management method, and in particular to camera lens shared data management during a kind of Cluster Rendering Method.
Background technology
When the scene of high realism is rendered, the data volume of scene is very big, when parallel rendering is carried out, with access simultaneously The calculate node of memory node increases, after reaching the responding ability and the High speed network bandwidth upper limit of memory node, data Access will be as bottleneck, so as to influence to render performance.Additionally, in conventional Rendering algorithms, scene tinting stage is if desired etc. Can just proceed after corresponding data texturing is ready to, wait pending data to obtain in the corresponding time, processor is actually In idle waiting state, therefore data access bottleneck will reduce calculate node processor utilization, and reduction renders performance.
During using cluster parallel rendering, traditional management software that renders all is to locate rendering task as common task Reason, existing to render farm typically using the method distribution computing resource of static deployment, the self-service clouds of such as Renderbus are rendered Farm, which computing resource utilization rate is low.
Chinese patent (application number:200910013740, patent name:Based on DEADLINE graphic workstation rendering clusters Elastic construction) in propose the consistent elastic construction based on DEADLINE graphic workstation rendering clusters, support By task dynamically distributes computing resource, improve resource utilization to a certain degree, but rendering data access bottleneck etc. is not considered Problem.
Chinese patent (application number:201210431551, patent name:The construction method on farm is rendered based on cloud computing) in A kind of construction method that farm is rendered based on cloud computing is proposed, supports that rendering server is the dynamic increase and decrease of computing resource, but The characteristics of also without considering rendering data in itself.
Chinese patent (application number:201310653516, patent name:A kind of flexible render farm Dynamic Deployment System With method) in refer to the concept of rendering unit, each rendering unit is responsible for processing the rendering task for belonging to a camera lens. Multiple calculate nodes are constituted a rendering unit and complete rendering for successive frame by the method, are reduced task distribution and are reassigned band The communications burden come, improves the utilization rate of calculate node.But the patent does not fully take into account rendering unit inside wash with watercolours Correlation in data that dye task needs etc..
The content of the invention
Mainly under Cluster Rendering environment, rendering between frame task in same camera lens exists shared the present invention Static geometric data and data texturing characteristic, i.e. data dependence in camera lens between frame task proposes a kind of cluster wash with watercolours The method of camera lens shared data management during dye.
Wherein, under Cluster Rendering environment, multi-zone supervision strategy is taken computing resource:By multiple independent calculate nodes One rendering unit of composition, as one base unit for rendering subtask of completion.Rendered according to priority orders Dynamical Deployment Calculate node quantity in unit, takes rendering task graded dispatching strategy:Each camera lens in user's rendering task is divided Subtask is rendered into one or more, each renders subtask and is made up of the successive frame in the camera lens, each frame is transferred to render and drawn Hold up and rendered, referred to as frame task.
To achieve the above object, the present invention uses following technical scheme:
The method of camera lens shared data management during Cluster Rendering, including:
Step (1):Under Cluster Rendering environment, by each rendering unit be divided into a master node and several Slave nodes, the master processes on master nodes are in communication with each other with the slave processes on slave nodes;
Step (2):Master nodes read in camera lens and shared data and its equilibrium are stored in into each of rendering unit In slave nodes, and the shared data set up respectively in each slave node for managing the shared data in camera lens is managed Module;
Step (3):Rendering engine on each slave node starts to render, during rendering, if one renders and draws Shared data required for holding up is stored in the slave nodes belonging to the rendering engine, then what the rendering engine was asked is total to Enjoy data and the rendering engine is returned directly to by shared data management module;
If the shared data required for a rendering engine is stored in other slave nodes, in the rendering engine RDMA interface, the rendering engine are set between the slave nodes of the shared data required for affiliated slave nodes and storage The shared data of request is back to the rendering engine by RDMA interface.
In the step (1), IB communication connections are also set up between any two slave nodes.
Shared data includes quiet in camera lens data texturing and camera lens in the camera lens that master nodes read in the step (2) State geometric data.
In the step (2) master nodes according to shared data in camera lens size and type and current rendering unit In slave nodes number, balancedly shared data in shot segmentation finally determines to be distributed to the mirror of each slave node Shared data in head.
In the step (3), the connecting object equal with number of threads is rendered is created between any two slave nodes And MR.
In the step (3), RDMA interface reads data using asynchronous operation, ensures that RDMA interface is returned using simultaneously operating The data returned can use.
It is described to carry out simultaneously operating on each connecting object being connected with RDMA interface.
In the step (3), during rendering, rendering engine also directly reads appointing for completing to render in disk The private data of business.
In the step (1), switching connection status is also set up between any two slave nodes.
In the step (3), the rendering engine uses Bleman rendering engines.
Beneficial effects of the present invention are:
(1) present invention be shared data Governance framework design based on the shared data correlation of rendering task between camera lens with Realize.Internal storage access is switched to by disk access by by data, is possible to alleviate storage access bottleneck to a certain extent, from And improve rendering efficiency;
(2) data management module supporting location transparency, the data access transparency and the data duplication that the present invention is realized are special Property, wherein, location transparency refers to that upper level applications need to only give file path, and the interface for calling this module to provide is i.e. readable Data are taken or write, is stored in internal memory or on disk as data, be transparent for upper level applications;Number Refer to that upper level applications can be managed with transparent use shared data according to the transparency is accessed, repaiied without carrying out substantial amounts of application code Change;
(3) present invention can dynamically be adjusted and opened on each node according to the size and the number of slave nodes of shared data The size of the shared drive warded off, so as to avoid the waste of internal memory, so as to sufficiently using the storage resource of cluster, improve efficiency.
Brief description of the drawings
Fig. 1 is data management shared drive pond of the invention.
Fig. 2 is that local data accesses schematic diagram.
Fig. 3 is strange land data access schematic diagram.
Specific embodiment
The present invention will be further described with embodiment below in conjunction with the accompanying drawings:
Cluster environment of the invention as a example by comprising 60 Linux clusters of calculate node, in the Linux clusters, often Individual calculate node is 12 cores, by IB network connections.
The cluster by IB network interconnections that the present invention is based on.IB networks (Infiniband) be a high speed low latency, The internet technique of low CPU overhead, high reliability and enhanced scalability.One key characteristic of IB is can to provide RDMA (long-range DMA) is supported.IB can not need CPU during two ends (between server or server and storage) data transfer Intervention.The efficient and scalability of IB causes that it becomes the fields such as high-performance calculation, cloud, web2.0 and database purchase Optimal performance and high cost performance solution.
MR (Memory Registration) is a kind of permission in the application program addressable program of specified network adapter The mechanism in space is deposited, this partial memory can be stapled in internal memory to avoid operating system from being exchanged to swapace during registration In.Each MR is owned by a local key and a distal end key, and local key is used for local HCA and accesses local memory, such as exists In reception data procedures;Distal end key allows remote processes to access local memory by RDMA.
HCA (Host Channel Adapter), similar to the network interface card in Ethernet, as server access IB networks One end points, while additionally provide allowing program directly to access HCA and program virtual memory address to the address of physical address map Mechanism for resolving.
When running the example, rendering unit, data management system and Bleman rendering engines are deployed in cluster On, the document scene of the rendering task of submission meets Render Man specifications.
Wherein, each rendering unit is divided into a master node and several slave nodes, on master nodes Master processes are communicated with the slave processes in several calculate nodes, complete the scheduling of task and the transmission of data. Document scene is stored on file server, each slave nodes receive data from file server during operation According to.Above-mentioned calculate node is slave nodes.
It is stored in shared data in camera lens is distributed in each slave node of rendering unit, and sets up shared number The shared data in whole camera lens is managed collectively according to management module.
When the slave nodes in rendering unit need accessing shared data, it is necessary to send data to shared data management Request, then shared data management does corresponding operating for the request.
The method of camera lens shared data management during Cluster Rendering of the invention, including:
Step (1):Under Cluster Rendering environment, by each rendering unit be divided into a master node and several Slave nodes, the master processes on master nodes are in communication with each other with the slave processes on slave nodes;
Step (2):Master nodes read in camera lens and shared data and its equilibrium are stored in into each of rendering unit In slave nodes, and the shared data set up respectively in each slave node for managing the shared data in camera lens is managed Module;
Step (3):Rendering engine on each slave node starts to render, during rendering, if one renders and draws Shared data required for holding up is stored in the slave nodes belonging to the rendering engine, then what the rendering engine was asked is total to Enjoy data and the rendering engine is returned directly to by shared data management module;
If the shared data required for a rendering engine is stored in other slave nodes, in the rendering engine RDMA interface, the rendering engine are set between the slave nodes of the shared data required for affiliated slave nodes and storage The shared data of request is back to the rendering engine by setting RDMA interface.
Specifically, the method for camera lens shared data management is during the Cluster Rendering of the invention:
First, start rendering unit, submit rendering task to, rendering unit can log-on data management system;
Data management system is optimized for the shared data read operation in camera lens, is comprised the following steps that:
(1) shared data management system initialization:
Each node opens up shared drive region;Each node creates shared data region, and space is applied in internal memory;Will The segment space is locked in internal memory;Data structure needed for metadata, data access is initialized;Logical is accessed to remote memory Believe with connection initialized, including set up between each node IB communication connections, log-on data buffer zone, switch company Connect state.
(2) master nodes read shared file list:
Rendering unit notifies master nodes loading shared data;Rendering unit can provide shared number to data management system According to store path, the path parameter that master nodes are provided according to rendering unit reads shared file list, including camera lens line Static geometry file in reason file and camera lens.
(3) master nodes distribute each slave nodes in a balanced way needs the listed files of loading:
Slave nodes load corresponding shared data according to the listed files of distribution, the internal memory that data storage is initialized Region, each slave node is only responsible for a part for storage shared data, forms data management shared drive pond as shown in Figure 1;
(4) during being rendered, the rendering engine on each slave node reads file data, including shared Data file and private data file.For private data, rendering engine can go file to take according to the mode of ordinary magnetic disc file Read on business device, for shared data, then read by data management system.
(5) shared data file dispersion is stored on each slave node of whole rendering unit, and the access of data can divide It is two kinds of local IP access and strange land accesses, local data accesses the difference with strange land data access:
If as shown in Fig. 2 the shared data required for a rendering engine is stored in the slave belonging to the rendering engine In node, such as calculate node A, the slave nodes belonging to the rendering engine that calculate node A is currently running, then described to render The shared data of engine requests returns directly to the rendering engine by shared data management module, and this process is local IP access.
When the shared data that rendering engine needs is stored on local internal memory, rendering engine sends request of data to shared Data management module, after shared data management module receives request, first number of the shared file in shared data management module The address of the shared data of rendering engine request is found in, and it is according to the address of shared data that corresponding shared data is direct Return to rendering engine.
But when the document scene that engine needs stores shared drive region in other nodes, current node and deposit Need to carry out remote memory data access for the two processes between the node of file needed for storage, employ the mode reality of RDMA It is existing, as shown in Figure 3.
In figure 3, calculate node A and calculate node B are slave nodes, now, the rendering engine in calculate node A Required shared data is stored in calculate node B, then RDMA interface, institute are set between calculate node A and calculate node B The shared data for stating rendering engine request is back to the rendering engine by RDMA interface, and this process is strange land accesses.
In initial phase, created between each slave node and be equal to the connecting object for rendering number of threads and MR.
Realize accessing remote data using RDMA interface.Using RDMA read data when be it is asynchronous, it is same using RDMA Step operation ensures that RDMA interface returned data can use.The simultaneously operating of RDMA is carried out on each connecting object.
Although above-mentioned be described with reference to accompanying drawing to specific embodiment of the invention, not to present invention protection model The limitation enclosed, one of ordinary skill in the art should be understood that on the basis of technical scheme those skilled in the art are not Need the various modifications made by paying creative work or deformation still within protection scope of the present invention.

Claims (6)

1. the method that camera lens shared data is managed during Cluster Rendering, it is characterised in that including:
Step (1):Under Cluster Rendering environment, each rendering unit is divided into a master node and several slave Node, the master processes on master nodes are in communication with each other with the slave processes on slave nodes;
Step (2):Master nodes read camera lens in shared data and by its equilibrium be stored in rendering unit each slave section In point, and set up the shared data management module for managing the shared data in camera lens respectively in each slave node;
Step (3):Rendering engine on each slave node starts to render, during rendering, if a rendering engine institute The shared data of needs is stored in the slave nodes belonging to the rendering engine, then the shared number of the rendering engine request The rendering engine is returned directly to according to by shared data management module;
If the shared data required for a rendering engine is stored in other slave nodes, belonging to the rendering engine Slave nodes and storage required for shared data slave nodes between RDMA interface is set, the rendering engine request Shared data the rendering engine is back to by RDMA interface;
Shared data includes static several in camera lens data texturing and camera lens in the camera lens that master nodes read in the step (2) What data;
In the step (2) in size and type and current rendering unit of the master nodes according to shared data in camera lens The number of slave nodes, balancedly shared data in shot segmentation, finally determines to be distributed in the camera lens of each slave node Shared data.
2. the method that camera lens shared data is managed during Cluster Rendering as claimed in claim 1, it is characterised in that described In step (1), IB communication connections are also set up between any two slave nodes.
3. the method that camera lens shared data is managed during Cluster Rendering as claimed in claim 1, it is characterised in that the step Suddenly in (3), the connecting object and MR equal with number of threads is rendered is created between any two slave nodes.
4. the method that camera lens shared data is managed during Cluster Rendering as claimed in claim 1, it is characterised in that the step Suddenly in (3), RDMA interface reads data using asynchronous operation, ensures that the data that RDMA interface is returned can use using simultaneously operating;
Simultaneously operating is carried out on each connecting object being connected with RDMA interface.
5. the method that camera lens shared data is managed during Cluster Rendering as claimed in claim 1, it is characterised in that the step Suddenly in (3), during rendering, rendering engine also directly reads the private data for completing rendering task in disk.
6. the method that camera lens shared data is managed during Cluster Rendering as claimed in claim 1, it is characterised in that described In step (3), the rendering engine uses Bleman rendering engines.
CN201510810897.9A 2015-11-19 2015-11-19 A kind of method of camera lens shared data management during Cluster Rendering Active CN105487929B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510810897.9A CN105487929B (en) 2015-11-19 2015-11-19 A kind of method of camera lens shared data management during Cluster Rendering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510810897.9A CN105487929B (en) 2015-11-19 2015-11-19 A kind of method of camera lens shared data management during Cluster Rendering

Publications (2)

Publication Number Publication Date
CN105487929A CN105487929A (en) 2016-04-13
CN105487929B true CN105487929B (en) 2017-06-16

Family

ID=55674923

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510810897.9A Active CN105487929B (en) 2015-11-19 2015-11-19 A kind of method of camera lens shared data management during Cluster Rendering

Country Status (1)

Country Link
CN (1) CN105487929B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111400024B (en) * 2019-01-03 2023-10-10 百度在线网络技术(北京)有限公司 Resource calling method and device in rendering process and rendering engine
CN111367876B (en) * 2020-03-04 2023-09-19 中国科学院成都生物研究所 Distributed file management method based on memory metadata
CN114896211B (en) * 2022-07-15 2022-10-04 北京蔚领时代科技有限公司 Method and system for sharing asset file based on cloud rendering application

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475716B (en) * 2013-09-11 2016-10-05 北京京东尚科信息技术有限公司 The method and system of data sharing is realized by shared storage
CN103617062B (en) * 2013-12-05 2016-09-07 山东大学 The render farm Dynamic Deployment System of a kind of flexibility and method
CN103986771A (en) * 2014-05-22 2014-08-13 浪潮电子信息产业股份有限公司 High-availability cluster management method independent of shared storage
CN104580422A (en) * 2014-12-26 2015-04-29 赞奇科技发展有限公司 Cluster rendering node data access method based on shared cache

Also Published As

Publication number Publication date
CN105487929A (en) 2016-04-13

Similar Documents

Publication Publication Date Title
US10325343B1 (en) Topology aware grouping and provisioning of GPU resources in GPU-as-a-Service platform
US20200201661A1 (en) Guaranteeing availability of target data to remote initiators via a hybrid source/target credit scheme
US10091295B1 (en) Converged infrastructure implemented with distributed compute elements
US10212092B2 (en) Architectures and methods for processing data in parallel using offload processing modules insertable into servers
EP3798835B1 (en) Method, device, and system for implementing hardware acceleration processing
US9977618B2 (en) Pooling of memory resources across multiple nodes
US9250954B2 (en) Offload processor modules for connection to system memory, and corresponding methods and systems
US10852955B2 (en) Method and system for accessing data objects stored in a storage system using object descriptors allocated by clients
US20160162316A1 (en) Offloading and parallelizing translation table operations
CN111309649B (en) Data transmission and task processing method, device and equipment
US10140032B1 (en) Multi-tier storage system with dynamic power management utilizing configurable data mover modules
CN108255598A (en) The virtual management platform resource distribution system and method for performance guarantee
AU2021269201B2 (en) Utilizing coherently attached interfaces in a network stack framework
US20210117333A1 (en) Providing direct data access between accelerators and storage in a computing environment, wherein the direct data access is independent of host cpu and the host cpu transfers object map identifying object of the data
CN104219279A (en) Modular architecture for extreme-scale distributed processing applications
CN105487929B (en) A kind of method of camera lens shared data management during Cluster Rendering
CN109964211A (en) The technology for virtualizing network equipment queue and memory management for half
CN107967165B (en) Virtual machine offline migration method based on LVM
CN106201328B (en) A kind of method, apparatus and server of the disk space managing memory node
US11853807B1 (en) Cluster scaling based on task state information
WO2023151216A1 (en) Graph data processing method and chip
Cohen et al. Applying Amdahl's Other Law to the data center
US11886911B2 (en) End-to-end quality of service mechanism for storage system using prioritized thread queues
Lim et al. Design of cache backend using remote memory for network file system
US20210266361A1 (en) Nvme-of queue management in host clusters

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant