B.tech Pat2020r1
B.tech Pat2020r1
Curriculum for
Final Year B. Tech.
(Computer Engineering)
Pattern 2020
AY 2024-25
Department of Computer Engineering
“Excellence in the field of Computer Engineering for rendering services to the industry
and society”.
• Mission
To strive for excellence at different levels and diverse dimensions in the field of
computer engineering.
• PSO a: Use knowledge to write programs and integrate them with the hardware/software
products in the domains of embedded systems, data science, networking, and web
technology.
2. Problem analysis: Identify, formulate, review research literature and analyze complex
engineering problems reaching substantiated conclusions using first principles of mathematics,
natural sciences and engineering sciences.
5. Modern tool usage: Create, select and apply appropriate techniques, resources, and modern
engineering and IT tools including prediction and modeling to complex engineering activities
with an understanding of the limitations.
6. The engineer and society: Apply reasoning informed by the contextual knowledge to
assess societal, health, safety, legal and cultural issues and the consequent responsibilities
relevant to the professional engineering practice.
8. Ethics: Apply ethical principles and commit to professional ethics and responsibilities and
norms of the engineering practice.
11. Project management and finance: Demonstrate knowledge and understanding of the
engineering and management principles and apply these to one’s own work, as a member and
leader in a team, to manage projects and in multidisciplinary environments.
12. Life-long learning: Recognize the need for and have the preparation and ability to engage
in independent and life-long learning in the broadest context of technological change.
Pattern 2020
Syllabus Structure
(AY 2024-25)
CE-
CSUA40206 MAJOR PROJECT PR/O - - 20 100 - - - 50 150 10
R
MANDATORY
M4 AU - - - - - - - - - -
COURSE
Total - 10 0 20 160 60 60 120 50 550 20
Pattern 2020
Course Curriculum
(AY 2024-25)
3. Analyze and evaluate the performance of parallel programs using analytical models.
Unit I : Introduction
Introduction to parallel computing, Architectures for high-performance computing,
Parallel programming models, Performance metrics and evaluation techniques
Unit II : Parallel Programming
Principles of Parallel Algorithm Design: Preliminaries, Decomposition Techniques,
Characteristics of Tasks and Interactions. Basic Communication : Operations- One-to-
All Broadcast and All-to-One Reduction, All-to-All Broadcast and Reduction, All-
Reduce and Prefix-Sum Operations, Scatter and Gather.
Unit III : Analytical Models of Parallel Programs
Analytical Models: Sources of overhead in Parallel Programs, Performance Metrics for
Parallel Systems, and The effect of Granularity on Performance, Scalability of Parallel
Systems, Minimum execution time and minimum cost, optimal execution time.
Unit IV : GPU Programming with CUDA
Introduction to GPU architecture and programming model, CUDA programming
basics: kernel functions, memory management, thread hierarchy, Optimization
techniques for GPU programming, GPU-accelerated algorithms and applications
Text Books :
1 Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar,
"Introduction to Parallel Computing", 2nd edition, Addison-Wesley, 2003, ISBN: 0-
Final Year B.Tech AY 2024-25 Computer Engineering
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
201-64865-2
2 Jason Sanders, Edward Kandrot, “CUDA by Example”, Addison-Wesley,
ISBN-13: 978-0- 13-138768-3
3 Parallel Programming: Techniques and Applications Using Networked Workstations
and Parallel Computers" by Barry Wilkinson and Michael Allen
4 Programming Massively Parallel Processors: A Hands-on Approach" by David B. Kirk
and Wen-mei W.Hwu
Reference Books :
1 "Introduction to High Performance Computing for Scientists and Engineers" by Georg
Hager and Gerhard Wellein.
2 "Parallel Computing: Theory and Practice" by Michael J. Quinn.
Course Objectives and Outcomes: Practical hands on is the absolute necessity as far as
employability of the learner is concerned. The presented course is solely intended to enhance
the competency by undertaking the laboratory assignments of the core courses.
Instructions to Students:
Compare performance of each parallel program with sequential algorithm. [also considering
different types of array sizes].
1 Implement a parallel program to calculate the sum of elements in a large array. Use
OpenMP directives to parallelize the computation across multiple threads. Measure the
execution time of the parallel program for different numbers of threads and compare it with
the sequential version. Analyze and discuss the performance results, including speedup,
efficiency, and scalability.
2 Implement parallel algorithms using OpenMP to perform matrix multiplication. Divide the
matrices into equal-sized blocks and assign each block to a different thread for computation.
Compare the performance of the parallel algorithm with the sequential matrix multiplication
algorithm. Investigate load balancing strategies and synchronization techniques to optimize
the parallel matrix multiplication.
3 Select a parallel sorting algorithm (e.g., quicksort, mergesort) and analyze its performance
using analytical models. Consider factors such as input size, number of processors (threads),
and communication overhead. Predict the execution time and scalability of the algorithm
using the analytical model. Compare the predictions with experimental results obtained from
running the algorithm on OpenMP and discuss the similarities and differences.
4(A)Write a CUDA program for very large matrix multiplication
(B)Write a CUDA program for dot product using synchronization technique.
SCE Components:
References:
1. https://hpc.llnl.gov/training/tutorials/introduction-parallel-computing-tutorial
2. https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#introduction
3. https://www.openmp.org/resources/tutorials-articles/
Professional Elective IV
CSUA40202A: NATURAL LANGUAGE PROCESSING
Text Books :
1. James Allen, “Natural Language Understanding”, Pearson Publication, ISBN:
978-81-317-0895-8 2nd Edition
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
List of Assignments :
1. To learn to calculate bigrams from a given corpus and calculate probability of a sentence.
2. Using programming language Python and suitable libraries perform fundamental language
processing for three different languages.
3. Survey various techniques for POS tagging and implement any one of them
4. Write a program that can give you the country by its capital. Write a function that takes in
three words, and the embeddings dictionary. Your task is to find the capital cities. For
example, given the following words input: 1: Athens 2: Greece 3: Baghdad, your task is to
predict the country 4: Iraq. You can use the pre trained word embeddings and a similarity
function.
5. Implement sentiment analysis over any suitable dataset by applying pre-processing,
extracting necessary features and using machine learning algorithm Mini Project Study and
implementation of research paper in Multidisciplinary NLP using open source tools and
libraries
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
PROFESSIONAL ELECTIVE IV
CSUA40202B: COMPUTER NETWORKS-II
Teaching Scheme Examination Scheme
.
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
PROFESSIONAL ELECTIVE IV
CSUA40202C: HUMAN COMPUTER INTERFACE
Teaching Scheme Examination Scheme
● Provide an overview of the concepts relating to the design of human-computer interfaces in ways
making computer-based systems comprehensive, friendly and usable.
● Understand the theoretical dimensions of human factors involved in the acceptance of
computer interfaces.
● Identify the impact of usable interfaces in the acceptance and performance utilization of
informationsystems.
● Identify the importance of working in teams and the role of each member within an
interface development phase.
Course Outcomes:
After studying this course, students will be able to:
1. Understand the Human-Computer Interaction and what interaction design is.
2. Understand Human Capabilities and Core Cognitive aspects of interaction design.
3. Apply Quantitative Analysis, Evaluation, and Redesign.
4. Evaluate sample interfaces using different models.
Unit I – Introduction to Human-Computer Interaction
What is HCI – design, models, evaluation, Need to understand people, computers and methods. Basic
human abilities - vision, hearing, touch, memory. The difference between good and poor interaction
design, what interaction design is and how it relates to human-computer interaction and other fields.
Need for Design - Examples from Design of everyday things, case studies, Evolution of the web and
digital interfaces.
Exercise – Identify problems around us requiring design solution Or problems solved using design.
Unit II – Understanding the Design Process
Interaction design basics, HCI in the software process, Design rules, Evaluation techniques, Universal
design, User support, Individual differences, designing interfaces for all, User research and techniques,
Understanding Personae, Good and poor design, Ergonomics.
Exercise- Creating personae for different application in everyday use.
Unit III – Understanding the Interaction
What, why and when to evaluate, Design guidelines, Golden rules and heuristics, Goals of
Evaluation, Evaluation criteria, DECIDE framework, Evaluation through: Expert analysis,
User participation.
Exercise-User Persona: Creating personae for different application in everyday use. Develop a precise
description of the user of the product in focus of the design and what the user wishes to accomplish.
Design a small prototype (Web/Mobile App) of it and evaluate it using different evaluation
techniques
Unit IV – UI Evaluation Techniques and Real Time Applications
Models- Cognitive models, Goaland Task hierarchy models, Linguistic models, Physical and Device
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
PROFESSIONAL ELECTIVE IV
CSUA40202D: INFORMATION RETRIEVAL AND WEBMINING
Teaching Scheme Examination Scheme
1. Yates & Neto, "Modern Information Retrieval", Pearson Education, ISBN 81-297-0274-6 (2011).
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
IOEUA40203
OPEN ELECTIVE II
IOEUA40203: COURSERA CERTIFICATION
Teaching Scheme Examination Scheme
The institute has partnered with Coursera to offer different tracks of courses, each catering to different
skill sets, aimed at enhancing students' abilities and making them eligible for placement opportunities.
Certification is awarded upon completion of these courses. Furthermore, academic credits are granted
based on the completion of an entire track, allowing students to progress academically while preparing
for their future careers. This initiative not only boosts students' employability but also integrates their
learning achievements into their formal education.
Bansilal Ramnath Agarwal Charitable Trust’s
Vishwakarma Institute of Information Technology, Pune-48
(An Autonomous Institute affiliated to Savitribai Phule Pune University)
Department of Computer Engineering
Course Outcomes :
After completion of the course, student will be able to
1. Produce evidence of independent investigation
2. Analyze the results and their interpretation intensively and critically.
3. Report and present the original results in an orderly way and placing the open
questions in the right perspective.
4. Link techniques and results from literature as well as actual research and future
research lines with the research.
5. Appreciate practical implications and constraints of the specialist subject
Guidelines
The student shall complete the work of the Project which will consist of problem statement,
literature review, SRS, Model and Design, Selection of Technology and Tools, Installations,
UML implementations, testing, Results, performance discussions using data tables per
parameter considered for the improvement with existing/known algorithms/systems and
comparative analysis and validation of results and conclusions. The candidate shall deliver a
presentation on the advancement in Technology pertaining to the selected project topic. The
examinee will be assessed by a panel of examiners of which one is necessarily an external
examiner. The assessment will be broadly based on work undergone, content delivery,
presentation skills, documentation, question-answers and report. The student shall prepare
and submit the report of Project work in standard format for satisfactory completion of the
work that is the duly certified by the concerned guide and head of the Department/Institute.