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
>>>>>> О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫
>>>>>> О©╫О©╫О©╫О©╫О©╫О©╫
>>>

Reply via email to