Nice link. So the best way to protect your development is a) make system calls or b) provide a decent support and updating schema...
Enviado desde mi iPad > El 7/11/2014, a las 22:58, Lloyd Brown <[email protected]> escribió: > > > I can't answer this any slurm-specific case, but it's definitely > possible for a piece of software to be licensed under GPL, and still > have a fee associated with it. > > See this for more info: >> https://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowDownloadFee > > > > Lloyd Brown > Systems Administrator > Fulton Supercomputing Lab > Brigham Young University > http://marylou.byu.edu > >> On 11/07/2014 02:46 PM, José Román Bilbao Castro wrote: >> Hi Ralph, >> >> Is this one for me, the original poster or for both of us?. Anyway, just >> out of curiosity (as I am not familiar with licensing issues), how do >> third party software that uses SLURM does to make you pay so much money >> in licenses while not breaking GPL rules?, do they use system calls?. I >> never liked systems calls... For example EngineFrame... >> >> Thanks in advance >> >> Enviado desde mi iPad >> >> El 7/11/2014, a las 22:02, Ralph Castain <[email protected] >> <mailto:[email protected]>> escribió: >> >>> Just be sure you understand that by using slurm.h and linking against >>> libslurm, your application will become GPL. IANAL, so you should check >>> with one, if you care. >>> >>> >>> >>>> On Nov 7, 2014, at 11:14 AM, José Román Bilbao Castro >>>> <[email protected] <mailto:[email protected]>> wrote: >>>> >>>> Going even further, I have realized you are following an outdated >>>> documentation (12 releases behind from current one which is 14!!). >>>> >>>> Here is the current API: >>>> >>>> http://slurm.schedmd.com/api.html >>>> >>>> Have a look at the "Resource allocation" section, not the job steps one: >>>> >>>> * *slurm_init_job_desc_msg*—Initialize the data structure used in >>>> resource allocation requests. You can then just set the fields of >>>> particular interest and let the others use default values. >>>> * *slurm_job_will_run*—Determine if a job would be immediately >>>> initiated if submitted now. >>>> * *slurm_allocate_resources*—Allocate resources for a job. Response >>>> message must be freed >>>> using /slurm_free_resource_allocation_response_msg/ to avoid a >>>> memory leak. >>>> * *slurm_free_resource_allocation_response_msg*— Frees memory >>>> allocated by /slurm_allocate_resources/. >>>> * *slurm_allocate_resources_and_run*—Allocate resources for a job >>>> and spawn a job step. Response message must be freed >>>> using/slurm_free_resource_allocation_and_run_response_msg/ to >>>> avoid a memory leak. >>>> * *slurm_free_resource_allocation_and_run_response_msg*— Frees >>>> memory allocated by /slurm_allocate_resources_and_run/. >>>> * *slurm_submit_batch_job*—Submit a script for later execution. >>>> Response message must be freed >>>> using /slurm_free_submit_response_response_msg/ to avoid a memory >>>> leak. >>>> * *slurm_free_submit_response_response_msg*— Frees memory allocated >>>> by /slurm_submit_batch_job/. >>>> * *slurm_confirm_allocation*—Test if a resource allocation has >>>> already been made for a given job id. Response message must be >>>> freed using/slurm_free_resource_allocation_response_msg/ to avoid >>>> a memory leak. This can be used to confirm that an allocation is >>>> still active or for error recovery >>>> >>>> The steps one is to manage the steps concept I suppose. I mean, once >>>> you submit a job it follows a series of steps that change its status. >>>> I think this is the concept of step here. Steps should not be created >>>> nor modified by the user but by the scheduler itself. So it is up to >>>> the programmer to submit a job and query steps if needed, but not to >>>> modify them... >>>> >>>> By the way, I have never programmed using slurm but I think I could >>>> be correct ;). If not, I will be delighted to get responses because I >>>> will be using job submission API in a few days! >>>> >>>> Bests >>>> >>>> >>>> >>>> >>>> Enviado desde mi iPad >>>> >>>> El 7/11/2014, a las 20:02, José Román Bilbao Castro >>>> <[email protected] <mailto:[email protected]>> escribió: >>>> >>>>> >>>>> I have read a bit further. I think this can be a misunderstanding of >>>>> documentation. It does not say you cannot submit jobs but that you >>>>> should use this API to create and populate new jobs information. There >>>>> is a structure that defines a job but it shouldn't be manipulated >>>>> directly but through the API. Once the job is defined, you can submit >>>>> it using a different API: >>>>> >>>>> http://slurm.schedmd.com/launch_plugins.html >>>>> >>>>> Have a look at the last sentence on the first section. It states to >>>>> have a look at the src/plugins/launch/slurm/launch_slurm.c file. >>>>> >>>>> Also, for a broader picture, have a look at this page on the >>>>> Developers section: >>>>> >>>>> http://slurm.schedmd.com/documentation.html >>>>> >>>>> Specially on the Design subsection where the process of creating and >>>>> submitting a job is further described (it consists of multiple steps >>>>> and APIs). >>>>> >>>>> Hope this helps >>>>> >>>>> Enviado desde mi iPad >>>>> >>>>>> El 7/11/2014, a las 16:08, Всеволод Никоноров >>>>>> <[email protected] <mailto:[email protected]>> escribió: >>>>>> >>>>>> >>>>>> Hello Walter, >>>>>> >>>>>> Maybe you could just use "system" function? >>>>>> >>>>>> #include <cstdlib> >>>>>> #include <cstdio> >>>>>> int main (int argc, char** argv) >>>>>> { >>>>>> printf ("begin\n"); >>>>>> system ("sleep 1"); >>>>>> printf ("end\n"); >>>>>> } >>>>>> >>>>>> Place you sbatch call instead my "sleep 1", shouldn't this do what >>>>>> you want? >>>>>> >>>>>> 06.11.2014, 09:49, "Walter Landry" <[email protected] >>>>>> <mailto:[email protected]>>: >>>>>>> Hello Everyone, >>>>>>> >>>>>>> What is the recommended way for a C++ program to submit a job? О©╫The >>>>>>> API documentation says >>>>>>> >>>>>>> О©╫О©╫SLURM job steps involve numerous interactions with the slurmd >>>>>>> О©╫О©╫daemon. The job step creation is only the first step in the >>>>>>> О©╫О©╫process. We don't advise direct user creation of job steps, but >>>>>>> О©╫О©╫include the information here for completeness. >>>>>>> >>>>>>> Should I use system("srun")? О©╫DRMAA? >>>>>>> >>>>>>> Thank you, >>>>>>> Walter Landry >>>>>>> [email protected] <mailto:[email protected]> >>>>>> >>>>>> --О©╫ >>>>>> Vsevolod Nikonorov, JSC NIKIET >>>>>> О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ >>>>>> О©╫О©╫О©╫О©╫О©╫О©╫ >>>
