A mathematical framework for design discovery from multi-threaded applications using neural sequence solvers View Full Text


Ontology type: schema:ScholarlyArticle     


Article Info

DATE

2021-04-22

AUTHORS

Srijoni Majumdar, Nachiketa Chatterjee, Partha Pratim Das, Amlan Chakrabarti

ABSTRACT

Comprehending existing multi-threaded applications effectively is a challenge without proper assistance. Research has been proposed to mine programs to extract aspects of high-level design but not much to reverse-engineer the concurrent design from multi-threaded applications. To address the same, we develop a generic mathematical model to interpret run-time non-deterministic events and encode functional as well as thread-specific behaviour in form of quantifiable features, which can be fitted into a standard solver for automated inference of design aspects from multi-threaded applications. We build a tool Dcube based on the mathematical model and use various classifiers of a machine learning framework to infer design aspects related to concurrency and resource management. We collect a dataset of 480 projects from Github, CodeProject and Stack Overflow and 3 benchmark suites—CDAC Pthreads, Open POSIX Test Suites and PARSEC 3.0 and achieve an accuracy score of around 93.71% for all the design choices. More... »

PAGES

289-307

References to SciGraph publications

  • 2009-03-05. Pearson Correlation Coefficient in NOISE REDUCTION IN SPEECH PROCESSING
  • 2019. Empirical Approach to Machine Learning in NONE
  • 2003. The Parallel Debugging Architecture in the Intel® Debugger in PARALLEL COMPUTING TECHNOLOGIES
  • 2016-10-13. Surveying concurrency bug detectors based on types of detected bugs in SCIENCE CHINA INFORMATION SCIENCES
  • Identifiers

    URI

    http://scigraph.springernature.com/pub.10.1007/s11334-021-00393-8

    DOI

    http://dx.doi.org/10.1007/s11334-021-00393-8

    DIMENSIONS

    https://app.dimensions.ai/details/publication/pub.1137406254


    Indexing Status Check whether this publication has been indexed by Scopus and Web Of Science using the SN Indexing Status Tool
    Incoming Citations Browse incoming citations for this publication using opencitations.net

    JSON-LD is the canonical representation for SciGraph data.

    TIP: You can open this SciGraph record using an external JSON-LD service: JSON-LD Playground Google SDTT

    [
      {
        "@context": "https://springernature.github.io/scigraph/jsonld/sgcontext.json", 
        "about": [
          {
            "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/01", 
            "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
            "name": "Mathematical Sciences", 
            "type": "DefinedTerm"
          }, 
          {
            "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/08", 
            "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
            "name": "Information and Computing Sciences", 
            "type": "DefinedTerm"
          }, 
          {
            "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/0102", 
            "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
            "name": "Applied Mathematics", 
            "type": "DefinedTerm"
          }, 
          {
            "id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/0801", 
            "inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/", 
            "name": "Artificial Intelligence and Image Processing", 
            "type": "DefinedTerm"
          }
        ], 
        "author": [
          {
            "affiliation": {
              "alternateName": "Advanced Technology Development Centre, Indian Institute of Technology, Kharagpur, India", 
              "id": "http://www.grid.ac/institutes/grid.429017.9", 
              "name": [
                "Advanced Technology Development Centre, Indian Institute of Technology, Kharagpur, India"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Majumdar", 
            "givenName": "Srijoni", 
            "id": "sg:person.012641477257.24", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.012641477257.24"
            ], 
            "type": "Person"
          }, 
          {
            "affiliation": {
              "alternateName": "The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India", 
              "id": "http://www.grid.ac/institutes/grid.59056.3f", 
              "name": [
                "The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Chatterjee", 
            "givenName": "Nachiketa", 
            "id": "sg:person.015574076647.58", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015574076647.58"
            ], 
            "type": "Person"
          }, 
          {
            "affiliation": {
              "alternateName": "Department of Computer Science and Engineering, Indian Institute of Technology, Kharagpur, India", 
              "id": "http://www.grid.ac/institutes/grid.429017.9", 
              "name": [
                "Department of Computer Science and Engineering, Indian Institute of Technology, Kharagpur, India"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Das", 
            "givenName": "Partha Pratim", 
            "id": "sg:person.011616620437.89", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.011616620437.89"
            ], 
            "type": "Person"
          }, 
          {
            "affiliation": {
              "alternateName": "The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India", 
              "id": "http://www.grid.ac/institutes/grid.59056.3f", 
              "name": [
                "The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India"
              ], 
              "type": "Organization"
            }, 
            "familyName": "Chakrabarti", 
            "givenName": "Amlan", 
            "id": "sg:person.010222361716.17", 
            "sameAs": [
              "https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.010222361716.17"
            ], 
            "type": "Person"
          }
        ], 
        "citation": [
          {
            "id": "sg:pub.10.1007/s11432-015-0203-2", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1052462539", 
              "https://doi.org/10.1007/s11432-015-0203-2"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "sg:pub.10.1007/978-3-030-02384-3", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1108351969", 
              "https://doi.org/10.1007/978-3-030-02384-3"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "sg:pub.10.1007/978-3-642-00296-0_5", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1001727638", 
              "https://doi.org/10.1007/978-3-642-00296-0_5"
            ], 
            "type": "CreativeWork"
          }, 
          {
            "id": "sg:pub.10.1007/978-3-540-45145-7_41", 
            "sameAs": [
              "https://app.dimensions.ai/details/publication/pub.1042652135", 
              "https://doi.org/10.1007/978-3-540-45145-7_41"
            ], 
            "type": "CreativeWork"
          }
        ], 
        "datePublished": "2021-04-22", 
        "datePublishedReg": "2021-04-22", 
        "description": "Comprehending existing multi-threaded applications effectively is a challenge without proper assistance. Research has been proposed to mine programs to extract aspects of high-level design but not much to reverse-engineer the concurrent design from multi-threaded applications. To address the same, we develop a generic mathematical model to interpret run-time non-deterministic events and encode functional as well as thread-specific behaviour in form of quantifiable features, which can be fitted into a standard solver for automated inference of design aspects from multi-threaded applications. We build a tool Dcube based on the mathematical model and use various classifiers of a machine learning framework to infer design aspects related to concurrency and resource management. We collect a dataset of 480 projects from Github, CodeProject and Stack Overflow and 3 benchmark suites\u2014CDAC Pthreads, Open POSIX Test Suites and PARSEC 3.0 and achieve an accuracy score of around 93.71% for all the design choices.", 
        "genre": "article", 
        "id": "sg:pub.10.1007/s11334-021-00393-8", 
        "inLanguage": "en", 
        "isAccessibleForFree": false, 
        "isPartOf": [
          {
            "id": "sg:journal.1044675", 
            "issn": [
              "1614-5046", 
              "1614-5054"
            ], 
            "name": "Innovations in Systems and Software Engineering", 
            "publisher": "Springer Nature", 
            "type": "Periodical"
          }, 
          {
            "issueNumber": "3", 
            "type": "PublicationIssue"
          }, 
          {
            "type": "PublicationVolume", 
            "volumeNumber": "17"
          }
        ], 
        "keywords": [
          "multi-threaded applications", 
          "mathematical model", 
          "high-level design", 
          "non-deterministic events", 
          "generic mathematical model", 
          "Stack Overflow", 
          "mathematical framework", 
          "test suite", 
          "standard solvers", 
          "design aspects", 
          "PARSEC 3.0", 
          "concurrent design", 
          "design choices", 
          "design discovery", 
          "proper assistance", 
          "accuracy scores", 
          "resource management", 
          "solver", 
          "Pthreads", 
          "framework", 
          "applications", 
          "concurrency", 
          "GitHub", 
          "classifier", 
          "machine", 
          "dataset", 
          "quantifiable features", 
          "design", 
          "model", 
          "inference", 
          "mine program", 
          "suite", 
          "aspects", 
          "challenges", 
          "project", 
          "overflow", 
          "features", 
          "assistance", 
          "discovery", 
          "management", 
          "research", 
          "program", 
          "form", 
          "behavior", 
          "choice", 
          "events", 
          "scores", 
          "run-time non-deterministic events", 
          "thread-specific behaviour", 
          "tool Dcube", 
          "Dcube", 
          "CodeProject", 
          "benchmark suites\u2014CDAC Pthreads", 
          "suites\u2014CDAC Pthreads", 
          "POSIX Test Suites", 
          "neural sequence solvers", 
          "sequence solvers"
        ], 
        "name": "A mathematical framework for design discovery from multi-threaded applications using neural sequence solvers", 
        "pagination": "289-307", 
        "productId": [
          {
            "name": "dimensions_id", 
            "type": "PropertyValue", 
            "value": [
              "pub.1137406254"
            ]
          }, 
          {
            "name": "doi", 
            "type": "PropertyValue", 
            "value": [
              "10.1007/s11334-021-00393-8"
            ]
          }
        ], 
        "sameAs": [
          "https://doi.org/10.1007/s11334-021-00393-8", 
          "https://app.dimensions.ai/details/publication/pub.1137406254"
        ], 
        "sdDataset": "articles", 
        "sdDatePublished": "2022-01-01T19:01", 
        "sdLicense": "https://scigraph.springernature.com/explorer/license/", 
        "sdPublisher": {
          "name": "Springer Nature - SN SciGraph project", 
          "type": "Organization"
        }, 
        "sdSource": "s3://com-springernature-scigraph/baseset/20220101/entities/gbq_results/article/article_907.jsonl", 
        "type": "ScholarlyArticle", 
        "url": "https://doi.org/10.1007/s11334-021-00393-8"
      }
    ]
     

    Download the RDF metadata as:  json-ld nt turtle xml License info

    HOW TO GET THIS DATA PROGRAMMATICALLY:

    JSON-LD is a popular format for linked data which is fully compatible with JSON.

    curl -H 'Accept: application/ld+json' 'https://scigraph.springernature.com/pub.10.1007/s11334-021-00393-8'

    N-Triples is a line-based linked data format ideal for batch operations.

    curl -H 'Accept: application/n-triples' 'https://scigraph.springernature.com/pub.10.1007/s11334-021-00393-8'

    Turtle is a human-readable linked data format.

    curl -H 'Accept: text/turtle' 'https://scigraph.springernature.com/pub.10.1007/s11334-021-00393-8'

    RDF/XML is a standard XML format for linked data.

    curl -H 'Accept: application/rdf+xml' 'https://scigraph.springernature.com/pub.10.1007/s11334-021-00393-8'


     

    This table displays all metadata directly associated to this object as RDF triples.

    165 TRIPLES      22 PREDICATES      88 URIs      74 LITERALS      6 BLANK NODES

    Subject Predicate Object
    1 sg:pub.10.1007/s11334-021-00393-8 schema:about anzsrc-for:01
    2 anzsrc-for:0102
    3 anzsrc-for:08
    4 anzsrc-for:0801
    5 schema:author Na129090df1324068b475dcadd7697b1f
    6 schema:citation sg:pub.10.1007/978-3-030-02384-3
    7 sg:pub.10.1007/978-3-540-45145-7_41
    8 sg:pub.10.1007/978-3-642-00296-0_5
    9 sg:pub.10.1007/s11432-015-0203-2
    10 schema:datePublished 2021-04-22
    11 schema:datePublishedReg 2021-04-22
    12 schema:description Comprehending existing multi-threaded applications effectively is a challenge without proper assistance. Research has been proposed to mine programs to extract aspects of high-level design but not much to reverse-engineer the concurrent design from multi-threaded applications. To address the same, we develop a generic mathematical model to interpret run-time non-deterministic events and encode functional as well as thread-specific behaviour in form of quantifiable features, which can be fitted into a standard solver for automated inference of design aspects from multi-threaded applications. We build a tool Dcube based on the mathematical model and use various classifiers of a machine learning framework to infer design aspects related to concurrency and resource management. We collect a dataset of 480 projects from Github, CodeProject and Stack Overflow and 3 benchmark suites—CDAC Pthreads, Open POSIX Test Suites and PARSEC 3.0 and achieve an accuracy score of around 93.71% for all the design choices.
    13 schema:genre article
    14 schema:inLanguage en
    15 schema:isAccessibleForFree false
    16 schema:isPartOf N0554f014a64348f395e3a6b520946498
    17 N2e0f760457764b0981bc17032d9391e1
    18 sg:journal.1044675
    19 schema:keywords CodeProject
    20 Dcube
    21 GitHub
    22 PARSEC 3.0
    23 POSIX Test Suites
    24 Pthreads
    25 Stack Overflow
    26 accuracy scores
    27 applications
    28 aspects
    29 assistance
    30 behavior
    31 benchmark suites—CDAC Pthreads
    32 challenges
    33 choice
    34 classifier
    35 concurrency
    36 concurrent design
    37 dataset
    38 design
    39 design aspects
    40 design choices
    41 design discovery
    42 discovery
    43 events
    44 features
    45 form
    46 framework
    47 generic mathematical model
    48 high-level design
    49 inference
    50 machine
    51 management
    52 mathematical framework
    53 mathematical model
    54 mine program
    55 model
    56 multi-threaded applications
    57 neural sequence solvers
    58 non-deterministic events
    59 overflow
    60 program
    61 project
    62 proper assistance
    63 quantifiable features
    64 research
    65 resource management
    66 run-time non-deterministic events
    67 scores
    68 sequence solvers
    69 solver
    70 standard solvers
    71 suite
    72 suites—CDAC Pthreads
    73 test suite
    74 thread-specific behaviour
    75 tool Dcube
    76 schema:name A mathematical framework for design discovery from multi-threaded applications using neural sequence solvers
    77 schema:pagination 289-307
    78 schema:productId N8b54acd7b01445fb9d836d986a449eff
    79 N8d2bfa9b3e68473eb50057cba7d9f072
    80 schema:sameAs https://app.dimensions.ai/details/publication/pub.1137406254
    81 https://doi.org/10.1007/s11334-021-00393-8
    82 schema:sdDatePublished 2022-01-01T19:01
    83 schema:sdLicense https://scigraph.springernature.com/explorer/license/
    84 schema:sdPublisher N1d497b55404a4e3999ade21aa683dd7c
    85 schema:url https://doi.org/10.1007/s11334-021-00393-8
    86 sgo:license sg:explorer/license/
    87 sgo:sdDataset articles
    88 rdf:type schema:ScholarlyArticle
    89 N000b215e29594f5681d2c1ac48453dd5 rdf:first sg:person.010222361716.17
    90 rdf:rest rdf:nil
    91 N0554f014a64348f395e3a6b520946498 schema:volumeNumber 17
    92 rdf:type schema:PublicationVolume
    93 N1d497b55404a4e3999ade21aa683dd7c schema:name Springer Nature - SN SciGraph project
    94 rdf:type schema:Organization
    95 N2e0f760457764b0981bc17032d9391e1 schema:issueNumber 3
    96 rdf:type schema:PublicationIssue
    97 N8b54acd7b01445fb9d836d986a449eff schema:name dimensions_id
    98 schema:value pub.1137406254
    99 rdf:type schema:PropertyValue
    100 N8d2bfa9b3e68473eb50057cba7d9f072 schema:name doi
    101 schema:value 10.1007/s11334-021-00393-8
    102 rdf:type schema:PropertyValue
    103 Na129090df1324068b475dcadd7697b1f rdf:first sg:person.012641477257.24
    104 rdf:rest Nafc9afa729b14c9f99909e89f3e05ba2
    105 Nafc9afa729b14c9f99909e89f3e05ba2 rdf:first sg:person.015574076647.58
    106 rdf:rest Nb2d9c1706e584e279c0c67ea4b089ce6
    107 Nb2d9c1706e584e279c0c67ea4b089ce6 rdf:first sg:person.011616620437.89
    108 rdf:rest N000b215e29594f5681d2c1ac48453dd5
    109 anzsrc-for:01 schema:inDefinedTermSet anzsrc-for:
    110 schema:name Mathematical Sciences
    111 rdf:type schema:DefinedTerm
    112 anzsrc-for:0102 schema:inDefinedTermSet anzsrc-for:
    113 schema:name Applied Mathematics
    114 rdf:type schema:DefinedTerm
    115 anzsrc-for:08 schema:inDefinedTermSet anzsrc-for:
    116 schema:name Information and Computing Sciences
    117 rdf:type schema:DefinedTerm
    118 anzsrc-for:0801 schema:inDefinedTermSet anzsrc-for:
    119 schema:name Artificial Intelligence and Image Processing
    120 rdf:type schema:DefinedTerm
    121 sg:journal.1044675 schema:issn 1614-5046
    122 1614-5054
    123 schema:name Innovations in Systems and Software Engineering
    124 schema:publisher Springer Nature
    125 rdf:type schema:Periodical
    126 sg:person.010222361716.17 schema:affiliation grid-institutes:grid.59056.3f
    127 schema:familyName Chakrabarti
    128 schema:givenName Amlan
    129 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.010222361716.17
    130 rdf:type schema:Person
    131 sg:person.011616620437.89 schema:affiliation grid-institutes:grid.429017.9
    132 schema:familyName Das
    133 schema:givenName Partha Pratim
    134 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.011616620437.89
    135 rdf:type schema:Person
    136 sg:person.012641477257.24 schema:affiliation grid-institutes:grid.429017.9
    137 schema:familyName Majumdar
    138 schema:givenName Srijoni
    139 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.012641477257.24
    140 rdf:type schema:Person
    141 sg:person.015574076647.58 schema:affiliation grid-institutes:grid.59056.3f
    142 schema:familyName Chatterjee
    143 schema:givenName Nachiketa
    144 schema:sameAs https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015574076647.58
    145 rdf:type schema:Person
    146 sg:pub.10.1007/978-3-030-02384-3 schema:sameAs https://app.dimensions.ai/details/publication/pub.1108351969
    147 https://doi.org/10.1007/978-3-030-02384-3
    148 rdf:type schema:CreativeWork
    149 sg:pub.10.1007/978-3-540-45145-7_41 schema:sameAs https://app.dimensions.ai/details/publication/pub.1042652135
    150 https://doi.org/10.1007/978-3-540-45145-7_41
    151 rdf:type schema:CreativeWork
    152 sg:pub.10.1007/978-3-642-00296-0_5 schema:sameAs https://app.dimensions.ai/details/publication/pub.1001727638
    153 https://doi.org/10.1007/978-3-642-00296-0_5
    154 rdf:type schema:CreativeWork
    155 sg:pub.10.1007/s11432-015-0203-2 schema:sameAs https://app.dimensions.ai/details/publication/pub.1052462539
    156 https://doi.org/10.1007/s11432-015-0203-2
    157 rdf:type schema:CreativeWork
    158 grid-institutes:grid.429017.9 schema:alternateName Advanced Technology Development Centre, Indian Institute of Technology, Kharagpur, India
    159 Department of Computer Science and Engineering, Indian Institute of Technology, Kharagpur, India
    160 schema:name Advanced Technology Development Centre, Indian Institute of Technology, Kharagpur, India
    161 Department of Computer Science and Engineering, Indian Institute of Technology, Kharagpur, India
    162 rdf:type schema:Organization
    163 grid-institutes:grid.59056.3f schema:alternateName The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India
    164 schema:name The A.K.Choudhury School of Information Technology, University of Calcutta, Kolkata, West Bengal, India
    165 rdf:type schema:Organization
     




    Preview window. Press ESC to close (or click here)


    ...