human: Given a node-centered hypergraph: <hypergraph>, where nodes represent papers and hyperedges represent sets of papers co-cited by a source paper.

Details of the hypergraph:
Center node: "optimizing ccnuma locality for task parallel execution under openmp and tbb on multicore based systems"
  Abstract: Abstract Task parallelism as employed by the OpenMP task construct orsome Intel Threading Building Blocks (TBB) components, al-though ideal for tackling irregular problems or typical produc-er/consumer schemes, bears some potential for performancebottlenecks if locality of data access is important, which istypically the case for memory-bound code on ccNUMA sys-tems. We present a thin software layer ameliorates adverse ef-fects of dynamic task distribution by sorting tasks into localityqueues, each of which is preferably processed by threads thatbelong to the same locality domain. Dynamic scheduling isfully preserved inside each domain, and is preferred over pos-sible load imbalance even if nonlocal access is required, mak-ing this strategy well-suited for typical multicore-mutisocketsystems. The effectiveness of the approach is demonstrated byusing a blocked six-point stencil solver as a toy model. 1 Introduction 1.1 Dynamic scheduling on ccNUMA systems “Cache-coherent nonuniform memory access” (ccNUMA) isthe preferred system architecture for multisocket shared-memory servers today. In ccNUMA, main memory is logicallyshared, meaning that all memory locations can be accessed byall sockets and cores in the system transparently. However,since main memory is physically distributed, i.e., partitioned inso-called locality domains (LDs), access bandwidths and laten-cies may vary, depending on which core accesses a certain partof memory. Access is fastest from the cores directly attachedto a domain. Nonlocal accesses are mediated by some inter-domain network, which is also capable of maintaining cachecoherency throughout the system.The big advantage of ccNUMA is that the available mainmemory bandwidth scales with the number of LDs, and shared-memory nodes with hundreds of domains can be built. Manyapplications in science and engineering rely on large memorybandwidth; computational ﬂuid dynamics (CFD) and sparsematrix eigenvalue solvers are typical examples. However,applications using shared-memory programming models like,e.g., OpenMP [1], TBB [2], or POSIX threads, should makesure that locality of access is maintained. Massive perfor-mance breakdowns may be observed when nonlocal (inter-LD)accesses or contention on an LD’s memory bus become bot-tlenecks [3]. One should add that the current OpenMP stan-dard, although it is the dominant threading model for scientiﬁcuser codes, does not contain any features that would enableccNUMA access optimizations.Most operating systems support a ﬁrst touch ccNUMAplacement policy: After allocation (using, e.g., malloc()),the mapping of logical to physical memory addresses is notestablished yet; the ﬁrst write access to an allocated memorypage will map the page into the locality domain of the corethat executed the write. This makes it straightforward to opti-mize parallel memory access in applications that have regularmemory access patterns. If the loop(s) that initialize array dataare parallelized in exactly the same way and use the same ac-cess patterns as the loops that use the data later, nonlocal datatransfer can be minimized. A prerequisite for ﬁrst touch initial-ization to work reliably is that threads are not allowed to movefreely through the shared-memory machine but maintain theirafﬁnity to the core they were initially bound to. Some thread-ing models discourage the use of strong thread-core afﬁnity,but numerically intensive high-performance parallel applica-tions usually beneﬁt from it. Operating systems often providelibraries and tools to enable a more ﬁne-grained control overpage placement. Under Linux, the numactl command and thelibnuma library are part of every standard distribution.Unfortunately the “ﬁrst touch” scheme does not work in allcases. Sometimes memory access cannot be organized in con-tiguous data streams or, even if that is possible, the problemitself may be irregular and show strong load imbalance if asimple static work distribution is chosen. Dynamic schedulingis the general method for handling the latter case. The OpenMPstandard [1] provides the dynamic and guided schedulingtypes for worksharing loops, and the task construct for task-based parallelism. In Intel Threading Building Blocks (TBB)1

Question: Please tell me which class the center node belongs to. The 40 classes are: cs.NA(Numerical Analysis), cs.MM(Multimedia), cs.LO(Logic in Computer Science), cs.CY(Computers and Society), cs.CR(Cryptography and Security), cs.DC(Distributed, Parallel, and Cluster Computing), cs.HC(Human-Computer Interaction), cs.CE(Computational Engineering, Finance, and Science), cs.NI(Networking and Internet Architecture), cs.CC(Computational Complexity), cs.AI(Artificial Intelligence), cs.MA(Multiagent Systems), cs.GL(General Literature), cs.NE(Neural and Evolutionary Computing), cs.SC(Symbolic Computation), cs.AR(Hardware Architecture), cs.CV(Computer Vision and Pattern Recognition), cs.GR(Graphics), cs.ET(Emerging Technologies), cs.SY(Systems and Control), cs.CG(Computational Geometry), cs.OH(Other Computer Science), cs.PL(Programming Languages), cs.SE(Software Engineering), cs.LG(Machine Learning), cs.SD(Sound), cs.SI(Social and Information Networks), cs.RO(Robotics), cs.IT(Information Theory), cs.PF(Performance), cs.CL(Computation and Language), cs.IR(Information Retrieval), cs.MS(Mathematical Software), cs.FL(Formal Languages and Automata Theory), cs.DS(Data Structures and Algorithms), cs.OS(Operating Systems), cs.GT(Computer Science and Game Theory), cs.DB(Databases), cs.DL(Digital Libraries), cs.DM(Discrete Mathematics). Directly output the class name.

gpt: cs.DC(Distributed, Parallel, and Cluster Computing)