I would suggest that we look at several quantum chemistry applications which 
have slight variations on the theme.  We have NWChem, Gamess, and Molpro 
examples to look at. I can send some input files and/or have a session to go 
over the relevant sections. We can do this later today. 

Thanks,
Sudhakar. 


On Dec 8, 2014, at 10:23 AM, Marlon Pierce <marpi...@iu.edu> wrote:

> The more examples, the better.  I'd like to find the right balance between 
> understanding the problem space and making incremental progress.
> 
> Marlon
> 
> On 12/8/14, 10:38 AM, Pamidighantam, Sudhakar V wrote:
>> Chaturi:
>> Thanks for these suggestions. One question I have is whether we should look 
>> at some of the input files in the set of applications currently under 
>> testing to come up with these requirements.
>> There may be additional requirements in some of the inputs. Of course we can 
>> incrementally update the data structures as well as we test these 
>> applications in more depth. But I feel some significant number of 
>> application cases should be accommodated with each update. We may target 
>> these for rc 0.15 and depending on the time available  we can look at at 
>> least few more applications.
>> 
>> Comments?
>> 
>> Thanks,
>> Sudhakar.
>> On Dec 8, 2014, at 9:22 AM, Chathuri Wimalasena 
>> <kamalas...@gmail.com<mailto:kamalas...@gmail.com>> wrote:
>> 
>> Hi Devs,
>> 
>> We are trying to add Gaussian application using airavata-appcatalog. While 
>> doing that, we face some limitations of the current design.
>> 
>> In Gaussian there are several input files, some input files should used when 
>> the job run command is generated, but some does not.  Those which are not 
>> involved with job run command also need to be staged to working directory. 
>> Such flags are not supported in current design.
>> 
>> Another interesting feature that in Gaussian is, in input file, we can 
>> specify the values for memory, cpu like options. If input file includes 
>> those parameters, we need to give priority to those values instead of the 
>> values specified in the request.
>> 
>> To support these features, we need to slightly modify our thrift IDLS, 
>> specially to InputDataObjectType struct.
>> 
>> Current struct is below.
>> 
>> struct InputDataObjectType {
>>     1: required string name,
>>     2: optional string value,
>>     3: optional DataType type,
>>     4: optional string applicationArgument,
>>     5: optional bool standardInput = 0,
>>     6: optional string userFriendlyDescription,
>>     7: optional string metaData
>> }
>> 
>> In order to support 1st requirement, we introduce 2 enums.
>> 
>> enum InputValidityType{
>> REQUIRED,
>> OPTIONAL
>> }
>> 
>> enum CommandLineType{
>> INCLUSIVE,
>> EXCLUSIVE
>> }
>> 
>> Please excuse me for names. You are welcome to suggest better names.
>> 
>> To support 2nd requirement, we change metaData field to a map with another 
>> enum where we define all the metadata types that can have.
>> 
>> enum InputMetadataType {
>>     MEMORY,
>>     CPU
>> }
>> 
>> So the new InputDataObjectType would be as below.
>> 
>> struct InputDataObjectType {
>>     1: required string name,
>>     2: optional string value,
>>     3: optional DataType type,
>>     4: optional string applicationArgument,
>>     5: optional bool standardInput = 0,
>>     6: optional string userFriendlyDescription,
>>     7: optional map<InputMetadataType, string> metaData,
>>     8: optional InputValidityType inputValid;
>>     9: optional CommandLineType addedToCommandLine;
>>     10: optional bool dataStaged = 0;
>> }
>> 
>> Suggestions are welcome.
>> 
>> Thanks,
>> Chathuri
>> 
>> 
>> 
> 

Reply via email to