6 research outputs found

    2017 - 2019 Purdue ECE "Advanced C Programming" Exams.

    No full text
    The exams used in ECE "Advanced C Programming" at Purdue University West Lafayette. Created by Yung-Hsiang Lu.</p

    NSF SI2 PI Meeting 2017

    No full text
    Will be uploaded before the PI meeting on 2017/02/2

    NSF SI2 PI Meeting 2017 February

    No full text
    Poster for the 2017 PI meeting<div><br></div><div><p>Many network cameras have been deployed for a wide range of purposes, such as monitoring traffic, evaluating air pollution, observing wildlife, and watching landmarks. The data from these cameras can provide rich information about the natural environment and human activities. To extract valuable information from this network of cameras, complex computer programs are needed to retrieve data from the geographically distributed cameras and to analyze the data. This project creates a open source software infrastructure by solving many problems common to different types of analysis programs. By using this infrastructure, researchers can focus on scientific discovery, not writing computer programs. This project can improve efficiency and thus reduce the cost for running programs analyzing large amounts of data. This infrastructure promotes education because students can obtain an instantaneous view of the network cameras and use the visual information to understand the world. Better understanding of the world may encourage innovative solutions for many pressing issues, such as better urban planning and lower air pollution. This project can enhance diversity through multiple established programs that encourage underrepresented minorities to pursue careers in science and engineering. <br><br>This project will combine: (1) the ability to retrieve data from many heterogeneous and distributed cameras, (2) the management of computational and storage resources using cloud computing, and (3) improved performance by reducing data movement, balancing loads among multiple cloud instances, and enhancing data-level parallelism. The project provides an application programming interface (API) that hides the underlying sophisticated infrastructure. This infrastructure will handle both real-time streaming data and archival data in a uniform way, so that the same analysis programs can be reused. This project has four major components: (1) a web-based user interface, (2) a database that stores the details about the network cameras, (3) a resource manager that allocates cloud instances, and (4) a computational engine that execute the programs written by users. The service-oriented architecture will allow new functions to be integrated more easily by the research community.</p></div

    2018 SI2 PI Meeting

    No full text
    This is the CAM2 (Continuous Analysis of Many CAMeras) project at Purdue University, supported by NSF OAC-1535108

    Conversations with ChatGPT about C Programming: An Ongoing Study

    No full text
    AI (Artificial Intelligence) Generative Models have attracted great attention in recent years. Generative models can be used to create new articles, visual arts, music composition, even computer programs from English specifications. Among all generative models, ChatGPT is becoming one of the most well-known since its public announcement in November 2022. GPT means {\it Generative Pre-trained Transformer}. ChatGPT is an online program that can interact with human users in text formats and is able to answer questions  in many topics, including computer programming. Many computer programmers, including students and professionals, are considering the use of ChatGPT as an aid. The quality of ChatGPT's aid is therefore of interest. To shed some light on this quality, this article presents conversations between the authors and ChatGPT. These conversations are analyzed to understand ChatGPT's ability to answer questions related to computer programming. We consider questions that may appear in C programming at the introductory levels. These questions are classified into different categories: (1) facts that can be looked up from documentations, (2) extension and derivation of facts, (3) simple computer programs, (4) extension of simple computer programs, (5) debugging, and (6) integration of discrete mathematics and C programming.  This study discovers that ChatGPT can provide correct answers in many cases, but also make mistakes in the others. For a sequence of related questions, ChatGPT may provide inconsistent answers and exhibits self contradiction.  It is also possible that ChatGPT gives a program with {\it security vulnerability}. ChatGPT may give different answers when the same questions are asked again. This article reports ChatGPT's answers captured in February and March 2023. </p

    An automated approach for improving the inference latency and energy efficiency of pretrained CNNs by removing irrelevant pixels with focused convolutions

    No full text
    Computer vision often uses highly accurate Convolutional Neural Networks (CNNs), but these deep learning models are associated with ever-increasing energy and computation requirements. Producing more energy-efficient CNNs often requires model training which can be cost-prohibitive. We propose a novel, automated method to make a pretrained CNN more energy-efficient without re-training. Given a pretrained CNN, we insert a threshold layer that filters activations from the preceding layers to identify regions of the image that are irrelevant, i.e. can be ignored by the following layers while maintaining accuracy. Our modified focused convolution operation saves inference latency (by up to 25%) and energy costs (by up to 22%) on various popular pretrained CNNs, with little to no loss in accuracy.</p
    corecore