The Department of Computer Science and Engineering gives students access to a wide variety of software and hardware development environments in the Department Center Four (C4) Teaching Laboratory and by remote access to the Department Data Center.
University and College Facilities
Campus-wide computing facilities available to students and faculty at USF include a number of dedicated public computing labs and a large cluster of Unix-based computers. The public computing labs feature Windows PCs with access to a broad range of applications including a range of Adobe and Microsoft products, Mathematica, Matlab, and many others. Students also have access to the USF Application Gateway "apps.usf.edu" which allows them to use over 40 different software applications for their personal and academic use on their own laptops via a Citrix server connection, by logging in with their USF NetID. The cluster of Unix-based computers, called CIRCE, is maintained by USF Research Computing. USF Research Computing actively maintains over 100 scientific software packages. This cluster can be used by any faculty member or student. USF Research Computing maintains a wiki page describing available, services, software, and hardware.
The USF Research Computing Student Cluster (SC) is designated for classwork-related use. As of July 2018, SC consists of approximately 22 nodes with 444 processor cores running Red Hat Enterprise Linux 6. Seven of these nodes are also equipped with single Nvidia Tesla M2070 GPUs. SC has 1.296TB of memory shared across the nodes and a 2.4PB replicated file system for home directories. Back-up is nightly. Access to the SC is requested/granted on a class-by-class basis (requested by class instructor). Department classes make use of SC for instruction. Program Design (COP 3514) uses SC to compile, test, and debug C programs on a networked Unix/Linux system.
The campus network provides high speed interconnection of the above resources along with individual faculty and staff workstations. The network is built using a mesh approach with 1 Gb/s Ethernet to the desktop and 10 Gb/s Ethernet connections between some switches on campus. The campus is also connected to the Internet2 research network. The campus also provides Wi-Fi Internet connection to students, faculty, staff, and guests.
Department Teaching Laboratory
Students can register for Lab Access to the Department Laboratory rooms which include various units, or labs, including the Unix Lab, Mobile Devices Lab, Embedded Systems Lab, Logic Design Lab, and Mobile Robotics Lab.
Unix Lab consists of 40 enterprise-grade HP workstations with Red Hat Linux installed. Of these 40 PCs, These are HP ProDesk with Quadcore i5 and 8GB of memory, they are configured with RHEL 7.4 OS, and the user home directories reside on a centralized storage unit. This computing environment allows students to perform very low-level experiments with the operating system and move around between systems over the network as they please. These systems are centrally managed and configured to allow quick recovery from misconfiguraions or errors.
Mobile Devices Lab
The Mobile Device Lab consists of 30 Android smartphones used to teach mobile device programming. In addition to the smartphones, there are an Android tablet, 3 Bluetooth blood pressure monitors, a Bluetooth sleep monitor, 4 Bluetooth fitness trackers, a Bluetooth smart watch, 2 Bluetooth ubiquitous sensors, 6 Bluetooth BioHarnesses, 2 Bluetooth beacon kits, a Bluetooth oximeter, a Bluetooth stethoscope, a Bluetooth digital scale, 5 Bluetooth Inertial measurement units, 6 phone belt clips, a USB Wi-Fi adapter, a USB serial adapter, a USB Bluetooth adapter, 4 rechargeable batteries, and a battery charger. This lab supports Department students in Mobile Device Programming (COP 4656).
Mobile Robotics Lab
The Mobile Robotics Lab consists of 30 mobile robotics kits. This lab supports Department students in Control of Mobile Robotics course (CDA 4621).
Embedded Systems Lab
The Embedded Systems Lab consists of dedicated work areas containing 50 AnvylT Spartan-6 FPGA Development Boards for Computer System Design (CDA 4203), 30 ZedBoard ZynqT-7000 Development Boards for hardware elective courses.
Logic Design Lab
The Computer Engineering Teaching Lab consists of 32 dedicated work areas containing 32 Dell OptiPlex All-in-one workstations running Windows 10, 21 Philmore Multi-Voltage Regulated DC Power Supply MW122A, 10 BK Precision 4011A 5MHz Function Generators, and 10 100 MHz Tektronix MSO 2014 Oscilloscopes. This lab supports Department students in Computer Logic Design (CDA 3201).
Hands-on Cybersecurity Lab
The Hands-on Cybersecurity Lab is accessible students enrolled in the hands-on Cybersecurity course and is suported by two main elements, the front-end clients, and the back-end server and network infrastructure. The front-end relies on the 40 enterprise-grade HP workstations with Red Hat Linux installed (see Unix lab above), and back-end servers and network infrastructure is comprised of several DELL servers, Cisco ASA and Palo Alto firewalls, and a storage array, which provide a virtual sandboxed environment for the course.
Department Data Center
Students get access to the servers in the Department Data Center through their classes and student organizations. Students also have access to University and College facilities.
This Microblade cluster has 16 nodes. Each node contains a quad core CPU, 64GB of DDR4 Memory, and runs RHEL 7 Linux OS. This system supports Department students in Operating Systems (COP 4600) and other courses.
Cloudera Hadoop cluster
This microblade cluster is composed of 1 master and 22 nodes. Each node contains a quad core CPU, 64GB of DDR4 Memory, and runs RHEL 7 Linux OS. This cluster is used for cloud computing and it’s configured with a Cloudera/Hadoop combination.
The Department hosts several servers for specialized use. Two of these servers are based on a Dell PowerEdge R520 hardware platform with Dual 8 core Xeon processors, 132 GB of RAM, and 15TB of disk space runing RHEL 7.4 and Ubuntu 20.04 LTS respectively. These servers are dedicated to support teaching fnctions, however, one is focused on serving computationally-intensive tasks and the second is used to host virtual appliances. Two additional servers are used for multipurpose roles, like small student projects, programming, and database courses.
Student organization servers
The Whitehatters Computer Security Club (WCSC) is a Department student organization with a focus on cybersecurity. WCSC supports a student team that competes in the yearly DEFCON Capture the Flag competition. The server setup is composed of systems running OpenStack.
The Department maintains the following equipment for educational use:
- 20 Dell 7020 workstation dedicated to the TAs for the department
- 1 DJI Inspire 1 drone
- 50 AnvylT Spartan-6 FPGA Development Boards for Computer System Design (CDA 4203)
- 30 ZedBoard ZynqT-7000 Development Boards for hardware elective courses
- 2 NAO robots for robotics elective courses
- Epson Interactive Projector installed in the main conference room
The Department has an Instructor & System Administrator position and a full-time System Administrator to support the educational resources described above, allocate systems resources, and provide technical guidance/support to students and faculty. The System Administrators supervise a team of student assistants who provide appropriate technical support while earning practical IT experience.