326 research outputs found

    Large-Scale Microtask Programming

    Full text link
    To make microtask programming more efficient and reduce the potential for conflicts between contributors, I developed a new behavior-driven approach to microtasking programming. In our approach, each microtask asks developers to identify a behavior behavior from a high-level description of a function, implement a unit test for it, implement the behavior, and debug it. It enables developers to work on functions in isolation through high-level function descriptions and stubs. In addition, I developed the first approach for building microservices through microtasks. Building microservices through microtasks is a good match because our approach requires a client to first specify the functionality the crowd will create through an API. This API can then take the form of a microservice description. A traditional project may ask a crowd to implement a new microservice by simply describing the desired behavior in a API and recruiting a crowd. We implemented our approach in a web-based IDE, \textit{Crowd Microservices}. It includes an editor for clients to describe the system requirements through endpoint descriptions as well as a web-based programming environment where crowd workers can identify, test, implement, and debug behaviors. The system automatically creates, manages, assigns microtasks. After the crowd finishes, the system automatically deploys the microservice to a hosting site.Comment: 2 page, 1 figure, GC VL/HCC 2020, Graduate Consortiu

    Gigaflop performance on a CRAY-2: Multitasking a computational fluid dynamics application

    Get PDF
    The methodology is described for converting a large, long-running applications code that executed on a single processor of a CRAY-2 supercomputer to a version that executed efficiently on multiple processors. Although the conversion of every application is different, a discussion of the types of modification used to achieve gigaflop performance is included to assist others in the parallelization of applications for CRAY computers, especially those that were developed for other computers. An existing application, from the discipline of computational fluid dynamics, that had utilized over 2000 hrs of CPU time on CRAY-2 during the previous year was chosen as a test case to study the effectiveness of multitasking on a CRAY-2. The nature of dominant calculations within the application indicated that a sustained computational rate of 1 billion floating-point operations per second, or 1 gigaflop, might be achieved. The code was first analyzed and modified for optimal performance on a single processor in a batch environment. After optimal performance on a single CPU was achieved, the code was modified to use multiple processors in a dedicated environment. The results of these two efforts were merged into a single code that had a sustained computational rate of over 1 gigaflop on a CRAY-2. Timings and analysis of performance are given for both single- and multiple-processor runs

    Creating and validating a scholarly knowledge graph using natural language processing and microtask crowdsourcing

    Get PDF
    Due to the growing number of scholarly publications, finding relevant articles becomes increasingly difficult. Scholarly knowledge graphs can be used to organize the scholarly knowledge presented within those publications and represent them in machine-readable formats. Natural language processing (NLP) provides scalable methods to automatically extract knowledge from articles and populate scholarly knowledge graphs. However, NLP extraction is generally not sufficiently accurate and, thus, fails to generate high granularity quality data. In this work, we present TinyGenius, a methodology to validate NLP-extracted scholarly knowledge statements using microtasks performed with crowdsourcing. TinyGenius is employed to populate a paper-centric knowledge graph, using five distinct NLP methods. We extend our previous work of the TinyGenius methodology in various ways. Specifically, we discuss the NLP tasks in more detail and include an explanation of the data model. Moreover, we present a user evaluation where participants validate the generated NLP statements. The results indicate that employing microtasks for statement validation is a promising approach despite the varying participant agreement for different microtasks

    The Effects of a Programed Text of Contingency Management Procedures on the Ability of Teachers to Write Behavioral Prescriptions

    Get PDF
    An informational source where teachers and teacher-candidates could gain a functional knowledge of contingency management techniques had not been developed. A programed text was written to provide this source. Five teachers and teacher-candidates were exposed to the text for a period of three days. As a result of this exposure, learning gains, significant at the 0.01 level, were found in the students\u27 abilities (a) to write behavioral prescriptions and (b) to write the principles of contingency management when presented with open-ended questions pertaining to these principles
    • …
    corecore