Method, terminal and storage medium for supercomputer obtaining operation application

By obtaining the application command line information of the job on the supercomputer and using the application dictionary file for keyword matching, the problem of job application identification of non-commercial software and user-developed software is solved, and high-accuracy application identification and statistics are achieved.

CN116029288BActive Publication Date: 2025-10-03SOUTHERN UNIVERSITY OF SCIENCE AND TECHNOLOGY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211581403.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-09
Publication Date
2025-10-03
Estimated Expiration
2042-12-09

AI Technical Summary

Technical Problem

Existing technologies are unable to accurately identify the job applications of non-commercial software and user-developed software on supercomputers, resulting in the inability to directly identify each job application.

Method used

By obtaining the application command line information corresponding to the job of the head node, the application dictionary file is used for keyword matching, the application name is identified, and the result is saved in the log file.

Benefits of technology

It achieves accurate identification of operational applications of non-commercial software and user-developed software with an accuracy rate of over 98%, supporting subsequent application statistical analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116029288B_ABST
    Figure CN116029288B_ABST
Patent Text Reader

Abstract

The present invention discloses a method, terminal and storage medium for a supercomputer to obtain job applications. The method includes: obtaining application command line information corresponding to the job being run by the head node; looping through the application dictionary file, performing keyword matching on the application command line information, and obtaining the corresponding application name based on the matching result; and saving the application name and corresponding information to a log file named with a date. The present invention obtains each job number and the head node where the corresponding job is running, and then obtains the command line information of each job application through the job number. The application name is found by matching keywords in the command line information through the application dictionary file, which solves the problem that due to various reasons such as non-standard application names, multiple versions, or multiple application types, there is no relevant method on the supercomputer to identify the application of each running job, resulting in the inability to directly and accurately identify each job application.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of supercomputers, and in particular to a method, terminal, and storage medium for obtaining job applications for a supercomputer. Background Art

[0002] Supercomputers are essential infrastructure for modern scientific and technological innovation and a vital tool for enhancing China's overall national strength. From experimental science and theoretical science to computational science and data science, supercomputing has become an indispensable tool for exploring and transforming the world. Supercomputing plays a vital role in uncovering the mysteries of life and thought, exploring the mechanisms of drug action, discovering and designing new materials, simulating new energy devices, predicting disasters, simulating fluid flow, exploring the unknowns of matter and the universe, mining large-scale data, and processing large, complex social networks. Consequently, supercomputers have numerous applications. According to incomplete statistics, the number of applications in high-performance computing alone reaches several hundred. If we add AI and big data applications, the number of supercomputing applications could reach thousands.

[0003] As a supercomputer manager (for example, a national supercomputing center, a computing center department of a university or research institution), it is of great significance to understand the application status of supercomputers. It can serve as the focus of the computing center's research support work, the development trend of the supercomputing industry, and an important basis for the research of the next generation of supercomputers. For example, in the past quarter, the material calculation VASP application used the most core time, so the investment in VASP application increased (for example, increase in manpower, material resources, and financial resources); at the same time, the scale of WRF application accounted for the largest proportion of 1000 cores, so the WRF-related technical personnel accordingly focused their research on the WRF-related weather budget scale.

[0004] However, there's no fixed format for supercomputer application usage. For example, some users use vasp, some use vasp_std, and still others use VASP. Some applications are even freely named. For example, after compiling an LBM application, some users name it "main," some "a," and still others "allRUN." Therefore, accurately obtaining the application name of each job is crucial before performing application statistics. Supercomputing typically involves logging into the system with a supercomputer account and then requesting access to the supercomputer's computing, storage, and network resources through the job scheduling system. Users utilize the supercomputer through the job scheduling system as a job queue. Specifically, users pre-install and configure the application software and operating environment, set up the computational model, write a job submission script, and submit the job. The job scheduling system schedules the job based on the resource request submitted by the user and delivers the job to the relevant compute node. The job then begins computing on the node. If the required computing resources are unavailable, the job waits.

[0005] Currently, for commercial software, such as ABAQUS, system administrators use license restrictions to set up ABAQUS queues to identify job applications. This means that only the ABAQUS queue can be selected when using ABAQUS. However, for most non-commercial open source software or user-developed software, there is no method for identifying individual applications for each job.

[0006] Therefore, the existing technology needs to be improved. Summary of the Invention

[0007] The technical problem to be solved by the present invention is that, in response to the defects of the existing technology, the present invention provides a method, terminal and storage medium for a supercomputer to obtain job applications, so as to solve the problem that most non-commercial software or software developed by users themselves do not have a relevant method to identify the application of each running job on the supercomputer due to various reasons such as non-standard application names, multiple versions, or multiple application types, resulting in the inability to directly and accurately identify each job application.

[0008] The technical solutions adopted by the present invention to solve the technical problems are as follows:

[0009] In a first aspect, the present invention provides a method for a supercomputer to obtain a job application, comprising:

[0010] Get the application command line information corresponding to the job running on the head node;

[0011] Loop through the application dictionary file, perform keyword matching on the application command line information, and obtain the corresponding application name based on the matching result;

[0012] The application name and corresponding information are saved in a log file named with the date.

[0013] In one implementation, obtaining the application command line information corresponding to the job being run by the head node includes:

[0014] An application dictionary file is set according to a preset application on the supercomputer; wherein the application dictionary file includes: an application keyword and an application name.

[0015] In one implementation, obtaining application command line information corresponding to the job being run by the head node includes:

[0016] Set up scheduled tasks through the management node;

[0017] Obtaining the job number and the head node information of the job running within a preset time period according to the scheduled task;

[0018] Printing process tree information on the head node corresponding to the head node information through a process tree command;

[0019] The application command line information corresponding to the running job is obtained according to the process tree information.

[0020] In one implementation, obtaining application command line information corresponding to the running job according to the process tree information includes:

[0021] Determine whether there is a command line with the job number plus shell as a keyword in the process tree information;

[0022] If there is a command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number plus shell as a keyword is used as the application command line information of the running job.

[0023] In one implementation, the determining whether a command line containing the job number plus shell as a keyword exists in the process tree information further includes:

[0024] If there is no command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number as a keyword is used as the application command line information of the running job.

[0025] In one implementation, looping through the application dictionary file, performing keyword matching on the application command line information, and obtaining the corresponding application name based on the matching result includes:

[0026] Looping through the application dictionary file to determine whether the application command line information contains key characters that match the application keywords in the application dictionary file;

[0027] If there is no matching keyword, the last two columns of information in the application command line information are used as the corresponding application name.

[0028] In one implementation, the determining whether the application command line information contains a key character that matches the application keyword in the application dictionary file further includes:

[0029] If there is a matching keyword, determine whether there are multiple application names corresponding to the keyword;

[0030] If there are multiple, remove the Python information and anaconda information from the application command line information, and use the last column of the removed application command line information as the application name;

[0031] If it is one, the corresponding application name in the application dictionary file is output.

[0032] In one implementation, saving the application name and corresponding job information into a log file named by date includes:

[0033] Get the execution time of the task corresponding to the application name;

[0034] The job number, user name and head node information corresponding to the application name are obtained, and the task execution time, the job number, the user name and the head node information are saved in the log file named with the date.

[0035] In a second aspect, the present invention further provides a terminal comprising: a processor and a memory, wherein the memory stores a program for a supercomputer to obtain job applications, and when the program for a supercomputer to obtain job applications is executed by the processor, it is used to implement the operation of the method for a supercomputer to obtain job applications as described in the first aspect.

[0036] In a third aspect, the present invention further provides a storage medium, which is a computer-readable storage medium and stores a program for a supercomputer to obtain job applications. When the program for a supercomputer to obtain job applications is executed by a processor, it is used to implement the operation of the method for a supercomputer to obtain job applications as described in the first aspect.

[0037] The present invention adopts the above technical solution to achieve the following effects:

[0038] The present invention obtains the application command line information corresponding to the job currently being run by the head node. It then matches keywords in the command line information using an application dictionary file to find the application name. This solves the problem that most non-commercial software or user-developed software cannot directly and accurately identify each job application due to various reasons such as non-standard application names, multiple versions, or a wide variety of application types. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying any creative work.

[0040] Figure 1 The present invention is a flowchart of a method for a supercomputer to obtain a job application in one implementation mode of the present invention.

[0041] Figure 2 It is a schematic diagram of part of the content of the application dictionary file in one implementation of the present invention.

[0042] Figure 3 It is a schematic diagram of part of the content of the file jobidHostname in one implementation of the present invention.

[0043] Figure 4 This is a schematic diagram of the first part of process tree information in one implementation of the present invention.

[0044] Figure 5 This is a schematic diagram of the second part of the process tree information in one implementation of the present invention.

[0045] Figure 6 It is a schematic diagram of part of the content of a job application file in one implementation of the present invention.

[0046] Figure 7 This is a flowchart for obtaining job applications in a practical application scenario of the present invention.

[0047] Figure 8 It is a functional principle diagram of a terminal in one implementation of the present invention.

[0048] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION

[0049] In order to make the purpose, technical solutions and advantages of the present invention more clear and distinct, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0050] Exemplary Methods

[0051] There is no fixed format for using supercomputer applications. For example, some vasp applications use vasp, some use vasp_std, and some use VASP, etc. Some applications are simply named by the user. For example, LBM applications are named main after the user compiles, some are named a, and some are allRUN. Therefore, it is crucial to count the application status and accurately obtain the application of each job.

[0052] Currently, for commercial software, such as ABAQUS, system administrators use license restrictions to set up ABAQUS queues to identify job applications. This means that only the ABAQUS queue can be selected when using ABAQUS. However, for most non-commercial software or user-developed software, due to various reasons such as non-standard application names, multiple versions, and a wide variety of application types, supercomputers lack a method for identifying each running application. This makes it impossible to directly and accurately identify each job application.

[0053] To address the above technical issues, embodiments of the present invention provide a method for obtaining supercomputer job applications. This method obtains the corresponding information between each job number and the running head node, and then uses the job number to obtain the running command line information of each job application. The application name is then found by matching keywords in the command line information with an application dictionary file, thus resolving the problem of non-commercial open source software being unable to identify supercomputer job applications.

[0054] like Figure 1 As shown, an embodiment of the present invention provides a method for a supercomputer to obtain a job application, comprising the following steps:

[0055] Step S100: Obtain application command line information corresponding to the job being run by the head node.

[0056] In this embodiment, the method for a supercomputer to obtain a job application is applied in a terminal, and the terminal includes but is not limited to: a computer, a mobile terminal and other devices.

[0057] In this embodiment, the corresponding information of each job number and the running head node is first obtained, then the process tree data information is printed in the head node of the job running, and finally the running command line information of each job application is obtained through the job number.

[0058] Specifically, in one implementation of this embodiment, the following steps are included before step S100:

[0059] Step S101a: setting an application dictionary file according to a preset application on the supercomputer; wherein the application dictionary file includes: an application keyword and an application name.

[0060] In this embodiment, a system is designed for obtaining each job application of the user for the supercomputing system; before obtaining the running command line information of each job application, an application dictionary file corresponding to the job running keyword and the application name is first set in the system; wherein, the application dictionary file is keyWordApp, and the application dictionary file can be set according to the preset applications on the supercomputer, for example, the preset applications are vasp applications, LBM applications, ABAQUS applications, etc.

[0061] like Figure 2 As shown, the application dictionary file includes two columns, the first column is a number of application keywords, and the second column is a number of application names; wherein each application keyword in the first column has a corresponding application name, and the application name is set after it.

[0062] In the application dictionary file, the application keywords in the first column are used to match the keywords in the running command line information of each job application, and the application names in the second column are used to query the corresponding application names based on the matching results of the keywords in the first column.

[0063] Specifically, in one implementation of this embodiment, step S100 includes the following steps:

[0064] Step S101, setting a scheduled task through the management node;

[0065] Step S102: obtaining the job number and the head node information of the job running within a preset time period according to the scheduled task;

[0066] Step S103: Printing the process tree information on the head node corresponding to the head node information through a process tree command;

[0067] Step S104: Acquire application command line information corresponding to the running job according to the process tree information.

[0068] In this embodiment, after setting the application dictionary file, the management node can be used to set a scheduled task to periodically obtain the job information running on each node; wherein, the scheduled task can be a scheduled task that is executed every 5 minutes, or it can be a custom-set scheduled task with other time periods.

[0069] In one implementation, the scheduled task can be set using the crontab command of the management node (the crontab command is commonly used in Unix and Unix-like operating systems and is used to set periodically executed instructions), for example:

[0070] [XX@node04~]$crontab -l

[0071] * / 5****source / etc / profile;sh / work / ccse-xiezy / jobidAndApp / jobidAndApp.sh In this embodiment, after setting the scheduled task, the scheduled task can be executed on the management node; taking a 5-minute scheduled task as an example, when the scheduled task is executed, the job number of the job running within 5 minutes and the head node information of the job running can be obtained, and the obtained information can be saved to the file jobidHostname; Figure 3 As shown, in the file jobidHostname, the first column is the job number of each node, and the second column is the head node information corresponding to the node.

[0072] In this embodiment, after obtaining the job number running in each node and the head node information of the job running, the process tree information is printed by the ps-axf command on the head node of the job; then, based on the process tree information printed by each node, the application command line information corresponding to the running job is obtained.

[0073] Specifically, in one implementation of this embodiment, step S104 includes the following steps:

[0074] Step S104a, determining whether there is a command line with the job number plus shell as a keyword in the process tree information;

[0075] Step S104b: If there is a command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number plus shell as a keyword is used as the application command line information of the running job;

[0076] Step S104c: If there is no command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number as a keyword is used as the application command line information of the running job.

[0077] In this embodiment, if Figure 4 As shown, the process tree information includes the sub-processes corresponding to each job number, from Figure 4It can be seen that process 804911 is the child process of 804910, and 804958 and 804959 are the child processes of 804954.

[0078] In the subprocess corresponding to each job number, the corresponding keyword can be queried, so as to determine the application command line information of the running job according to the queried keyword.

[0079] In one implementation, taking the job number plus shell as an example, the job number.shell (for example, 4326257.shell) keyword in the child process corresponding to the job number is queried. If the keyword can be found in the child process, the command line information of the next line of the command line where the keyword is located is used as the application command line information of the running job and saved in the file appInfo.log; for example, Figure 4 In the process tree information, for job 4326257, the command line information is:

[0080] 713770? R 7657:12|\_. / SSP585_V3;

[0081] For job 4337993, the command line information is:

[0082] s001:804953? S 0:00|\_mpiexec.hydra-machinefile

[0083] / work / chem-quanzw / .lsbatch / 1669640436.4337993.hostfile-np 40vasp_std.

[0084] In one implementation, if the query result with the job number plus shell as the keyword is empty, the job number (for example: 4340208) in the child process corresponding to the job number is queried with the job number as the keyword. If the keyword can be found in the child process, the command line information of the next line of the command line where the keyword is located is used as the application command line information of the running job and saved in the file appInfo.log. Figure 5 As shown, Figure 5 In the process tree information, the three jobs 4340208, 4340217, and 4340220 do not have the keyword: job number.Shell; then the command line information corresponding to job 4340208 is:

[0085] 169605? S 0:00|\_bash / data / med-sucx / host-microbiome / pan-cancer-host-microbiome-associations / bsub_jobs / grid_search_sparseCCA.sh TCGA-BRCA.

[0086] If no results are found using either the job number plus shell or the job number as the keyword, that is, there is no command line information using the job number plus shell as the keyword, and there is no command line information using the job number as the keyword, then use the user name corresponding to the job as the keyword to find the last line of all processes on this node as the application command line information.

[0087] like Figure 1 As shown, an embodiment of the present invention provides a method for a supercomputer to obtain a job application, comprising the following steps:

[0088] Step S200 , looping through the application dictionary file, performing keyword matching on the application command line information, and obtaining the corresponding application name according to the matching result.

[0089] In this embodiment, by querying a keyword and setting the application command line information corresponding to the running job, keyword matching can be performed according to a preset application dictionary file to find the application name corresponding to the running job.

[0090] Specifically, in one implementation of this embodiment, step S200 includes the following steps:

[0091] Step S201, looping through the application dictionary file to determine whether the application command line information contains a key character that matches an application keyword in the application dictionary file;

[0092] Step S202: If there is no matching keyword, the last two columns of information in the application command line information are used as the corresponding application name;

[0093] Step S203: If there is a matching keyword, determine whether there are multiple application names corresponding to the keyword;

[0094] Step S204: If there are multiple application command lines, remove the Python information and the anaconda information from the application command line information, and use the last column of the removed application command line information as the application name;

[0095] Step S205: If there is one, output the corresponding application name in the application dictionary file.

[0096] In this embodiment, after obtaining the application command line information, the keywords of the application dictionary file can be matched from the application command line information; if the keywords are not matched in the application dictionary file, the last two columns of the application command line information are used as the application name; if the keywords can be matched and there is only one application name, the corresponding application name in the application dictionary is output; if the keywords can be matched and there are multiple application names, then the information such as Python and anaconda is removed, and the last column of the application command line information is taken as the application name.

[0097] In this embodiment, the dictionary file is used to match keywords to find the application name of the running job. This method can achieve an accuracy rate of over 98%, laying a solid foundation for the next step of application core time statistical analysis.

[0098] like Figure 1 As shown, an embodiment of the present invention provides a method for a supercomputer to obtain a job application, comprising the following steps:

[0099] Step S300: Save the application name and corresponding job information into a log file named with a date.

[0100] In one implementation of this embodiment, step S300 includes the following steps:

[0101] Step S301, obtaining the execution task time corresponding to the application name;

[0102] Step S302: Obtain the job number, user name, and head node information corresponding to the application name, and save the task execution time, the job number, the user name, and the head node information into the log file named with the date.

[0103] In this embodiment, after obtaining the corresponding application name, the time of executing the task can be obtained, as well as the job number, user name, and head node information corresponding to the application name; and this information is recorded in the job application file in the format of job number-user name-head node information-application name (a file named after the date will be automatically generated every day); the job application file is a log file named after the date.

[0104] In the process of saving the execution time, job number, user name and head node information of the task, first determine whether the currently executed task is the first task executed that day. If it is the first task executed that day, create a corresponding log file named with the date of the day, and then save this information in the created log file. If it is not the first time the task is executed, directly find the corresponding log file and save this information in the corresponding log file.

[0105] Taking the 2022-11-30 file as an example, the content recorded in the application file is as follows Figure 6 shown.

[0106] like Figure 7 As shown, in an actual application scenario, obtaining the job application name includes the following steps:

[0107] Step S11, save the user name, job number, and head node of the running job (the job number is greater than the job number saved in the last task execution) to a file;

[0108] Step S12: Execute the pdsh remote command execution tool on the management node to obtain application command line information on the head node;

[0109] Step S13, determining whether the command line information contains a keyword; if yes, executing step S15; if no, executing step S14;

[0110] Step S14: Use the last two columns of the application command line information as the application name and jump to step S17;

[0111] Step S15, determining whether there are multiple application names; if yes, executing step S16; if no, executing step S17;

[0112] Step S16: Remove information such as python and anaconda, and take the job application name in the last column of the run application command;

[0113] Step S17: Find the application name. Save the job number, user name, head node, and application name to a file.

[0114] Step S18: Save the maximum job number obtained from executing the task this time to a file.

[0115] This embodiment achieves the following technical effects through the above technical solution:

[0116] This embodiment obtains the application command line information corresponding to the job currently running on the head node. It then matches keywords in the command line information using an application dictionary file to find the application name. This solves the problem that most non-commercial software or user-developed software cannot directly and accurately identify the application of each running job on a supercomputer due to various reasons such as non-standard application names, multiple versions, or a wide variety of application types.

[0117] Exemplary devices

[0118] Based on the above embodiments, the present invention also provides a terminal, comprising: a processor, a memory, an interface, a display screen, and a communication module connected via a system bus; wherein the processor is used to provide computing and control capabilities; the memory includes a storage medium and an internal memory; the storage medium stores an operating system and a computer program; the internal memory provides an environment for the operation of the operating system and computer program in the storage medium; the interface is used to connect to external devices, such as mobile terminals and computers; the display screen is used to display corresponding information; and the communication module is used to communicate with a cloud server or a mobile terminal.

[0119] When the computer program is executed by the processor, it is used to implement the operation of a method for a supercomputer to obtain a job application.

[0120] It will be understood by those skilled in the art that Figure 8 The principle block diagram shown in the figure is only a block diagram of a partial structure related to the solution of the present invention, and does not constitute a limitation on the terminal to which the solution of the present invention is applied. The specific terminal may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.

[0121] In one embodiment, a terminal is provided, comprising: a processor and a memory, wherein the memory stores a program for a supercomputer to obtain a job application, and when the program for a supercomputer to obtain a job application is executed by the processor, it is used to implement the operation of the method for a supercomputer to obtain a job application as described above.

[0122] In one embodiment, a storage medium is provided, wherein the storage medium stores a program for a supercomputer to obtain a job application, and when the program for a supercomputer to obtain a job application is executed by the processor, it is used to implement the operation of the method for a supercomputer to obtain a job application as described above.

[0123] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing related hardware through a computer program. The computer program can be stored in a non-volatile storage medium. When executed, the computer program can include the processes in the above-described method embodiments. Any reference to memory, database, or other media used in the various embodiments provided herein may include non-volatile and / or volatile memory.

[0124] In summary, the present invention provides a method, terminal and storage medium for a supercomputer to obtain job applications, the method comprising: obtaining application command line information corresponding to the job being run by the head node; looping through the application dictionary file, performing keyword matching on the application command line information, and obtaining the corresponding application name based on the matching result; saving the application name and the corresponding information to a log file named with a date. The present invention obtains each job number and the head node where the corresponding job is running, and then obtains the command line information of each job application through the job number. The application name is found by matching keywords in the command line information through the application dictionary file, which solves the problem that due to various reasons such as non-standard application names, multiple versions, or multiple application types, the supercomputer does not have a relevant method to identify the application for each running job, resulting in the inability to directly and accurately identify each job application.

[0125] It should be understood that the application of the present invention is not limited to the above examples. For those skilled in the art, improvements or changes can be made based on the above description. All these improvements and changes should fall within the scope of protection of the claims attached to the present invention.

Claims

1. A method for obtaining a job application by a supercomputer, characterized in that: include: Get the application command line information corresponding to the job running on the head node; Loop through the application dictionary file, perform keyword matching on the application command line information, and obtain the corresponding application name based on the matching result; Save the application name and corresponding information to a log file named with the date; The step of obtaining the application command line information corresponding to the job being run by the head node includes: Set up scheduled tasks through the management node; Obtaining the job number and the head node information of the job running within a preset time period according to the scheduled task; Printing process tree information on the head node corresponding to the head node information through a process tree command; Acquire application command line information corresponding to the running job according to the process tree information; The obtaining, according to the process tree information, application command line information corresponding to the running job includes: Determine whether there is a command line with the job number plus shell as a keyword in the process tree information; If there is a command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number plus shell as a keyword is used as the application command line information of the running job; The step of determining whether there is a command line with the job number plus shell as a keyword in the process tree information further includes: If there is no command line with the job number plus shell as a keyword, the next line of command line information of the command line with the job number as a keyword is used as the application command line information of the running job.

2. The method for obtaining a job application by a supercomputer according to claim 1, wherein: The process of obtaining the application command line information corresponding to the job being run on the head node previously includes: An application dictionary file is set according to a preset application on the supercomputer; wherein the application dictionary file includes: an application keyword and an application name.

3. The method for obtaining a job application by a supercomputer according to claim 1, wherein: The loop traverses the application dictionary file, performs keyword matching on the application command line information, and obtains the corresponding application name according to the matching result, including: Looping through the application dictionary file to determine whether the application command line information contains key characters that match the application keywords in the application dictionary file; If there is no matching keyword, the last two columns of information in the application command line information are used as the corresponding application name.

4. The method for obtaining a job application by a supercomputer according to claim 3, wherein: The step of determining whether the application command line information contains key characters that match the application keyword in the application dictionary file further includes: If there is a matching keyword, determine whether there are multiple application names corresponding to the keyword; If there are multiple, remove the Python information and anaconda information from the application command line information, and use the last column of the removed application command line information as the application name; If it is one, the corresponding application name in the application dictionary file is output.

5. The method for obtaining a job application by a supercomputer according to claim 1, wherein: The application name and corresponding job information are saved in a log file named after the date, including: Get the execution time of the task corresponding to the application name; The job number, user name and head node information corresponding to the application name are obtained, and the task execution time, the job number, the user name and the head node information are saved in the log file named with the date.

6. A terminal, characterized in that: include: A processor and a memory, wherein the memory stores a program for a supercomputer to obtain a job application, and when the program for a supercomputer to obtain a job application is executed by the processor, it is used to implement the operation of the method for obtaining a job application by a supercomputer according to any one of claims 1 to 5.

7. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, which stores a program for a supercomputer to obtain a job application. When the program for a supercomputer to obtain a job application is executed by a processor, it is used to implement the operation of the method for obtaining a supercomputer job application according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method for auditing network equipment configuration by utilizing big data statistical analysis

    CN111585809A

  • Method, device and equipment for detecting application state, medium and product

    CN113641544A