PC²
   HOME

TheInfoList



OR:

PC² is the Programming Contest Control System developed at
California State University, Sacramento California State University, Sacramento (CSUS, Sacramento State, or informally Sac State) is a public university in Sacramento, California. Founded in 1947 as Sacramento State College, it is the eleventh oldest school in the 23-campus Californi ...
in support of Computer Programming Contest activities of the
ACM ACM or A.C.M. may refer to: Aviation * AGM-129 ACM, 1990–2012 USAF cruise missile * Air chief marshal * Air combat manoeuvring or dogfighting * Air cycle machine * Arica Airport (Colombia) (IATA: ACM), in Arica, Amazonas, Colombia Computing * ...
, and in particular the
ACM International Collegiate Programming Contest The ICPC International Collegiate Programming Contest, known as the ICPC, is an annual multi-tiered competitive programming competition among the universities of the world. Directed by ICPC Executive Director and Baylor Professor Dr. William B. ...
. It was used to conduct the ACM ICPC World Finals in 1990 and from 1994 through 2009. In 2010, the ACM ICPC World Finals switched to using Kattis, the KTH automated teaching tool; however, PC2 continues to be used for a large number of ICPC Regional Contests around the world.


Computer programming contests and PC²

Computer programming contest have rules and methods for judging submissions. The following describes in a general way a contest where PC2 is used. A computer programming contest is a competition where teams submit (computer program) solutions to judges. The teams are given a set of problems to solve in a limited amount of time (for example 8-13 problems in 5 hours). The judges then give pass/fail judgements to the submitted solutions. Team rankings are computed based on the solutions, when the solutions were submitted and how many attempts were made to solve the problem. The judges test in a
Black box testing Black-box testing is a method of software testing that examines the functionality of an application without peering into its internal structures or workings. This method of test can be applied virtually to every level of software testing: unit t ...
where the teams do not have access to the judges' test data. PC2 manages single or multi-site programming contests. It provides a team a way to log in, test solutions, submit solutions and view judgements from judges. PC2 provides judges a way to request team solutions (from a PC2 server) run/execute the solution and enter a judgment. The PC2 scoreboard module computes and creates standings and statistics web pages (
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
/
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. ...
). PC2 is easy to install on
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
/Linux-like systems and MS Windows and does not require super-user (root) access to install it or use it: this makes it an attractive choice for users who may not have super-user access.


Usage and User Experiences

PC2 was used for the
ACM International Collegiate Programming Contest The ICPC International Collegiate Programming Contest, known as the ICPC, is an annual multi-tiered competitive programming competition among the universities of the world. Directed by ICPC Executive Director and Baylor Professor Dr. William B. ...
World Finals from 1994 to 2009. It has also been used in hundreds of ICPC Regional Contests around the world. It has been used continuously by the ACM Pacific Northwest Regional Contest since 1989, as well as by many other ICPC Regional Contests including the Africa and Arabia Regional Contests, numerous Regional Contests in Asia, and several Regional Contests in the U.S. It remains today the single most widely used Contest Control System for ICPC Regional Contests. PC2 has been used by the Africa and Arabia Collegiate Programming Contest (ACPC) every year since its inception more than 25 years ago. ACPC comprises a set of Regional Contests, including the separate Saudi, Nigerian, Oman, South Africa, Togolese, Moroccan, Kuwait, Algerian, Jordanian, Palestinian, Qatar, Beninese, Egyptian, Lebanese, Ethiopian, Tunisian, Bahrain, Sudanese, Syrian, and Angolan Collegiate Programming Contests. Every one of these Regional/National Contests uses PC2; many of the Regional Contests are fed by sub-regional contests, all of which also use PC2. The winners at each Regional Contest advance to the ACPC Championship, which also uses PC2. ACPC also sponsors a variety of additional contests, including "ACPC Kickoff", "ACPC for Girls", "ACPC for Teens", and "ACPC for Seniors"; again, all of these contests also use PC2. The ICPC (formerly ACM) Greater New York Regional Programming Contest in North America has been using PC2 for over 20 years. Greater New York has used PC2 many different ways over the years including single site, multi-site and the Web-based team client. The judges in the Greater New York region prefer PC2 over other Contest Control Systems since it gives them the greatest flexibility in judging contestant submissions. Submissions may be judged manually or using computer auto-judging. Often, the judges prefer to judge some problems manually, and PC2 provides this capability. In addition, the PC2 development team has quickly responded to questions and help with any issues that came up. PC2 has been in use by the ACM Mid-Atlantic Programming Contest for several years. In earlier years, systems administrators had limited success with the program due to its distributed nature. Each of the contest sites ran a PC2 server which needed to initiate and accept
Java RMI In computing, the Java Remote Method Invocation (Java RMI) is a Java API that performs remote method invocation, the object-oriented equivalent of remote procedure calls (RPC), with support for direct transfer of serialized Java classes and di ...
. Using a central datacenter in the fall of 2005 revealed no problems. In 2014, PC2 crashed 3:45h into the contest, preventing teams from obtaining receipts for their submissions. Judges were unable to retrieve submissions - the contest ended without announcing a winner. It took one week to try to recover those submissions. A similar failure occurred in 2016. System administrators had decided to deploy a web add-on to PC2 which then failed under load. The contest start time was delayed by 90 minutes. Teams were unable to submit problems and the contest director scrambled to find a work-around that let teams save problems with a time stamp to be considered later. In 2013, system operators failed to enter the correct team names, leaving teams without information about the standings in the contest (the scoreboard). System operators were unable to correct the team names during the contest. Because of these incidents, organizers of the region are now considering moving to an alternative system, such as Kattis, which is the official system used by ACM for the ICPC World Finals. With the introduction of version 9 (
socket Socket may refer to: Mechanics * Socket wrench, a type of wrench that uses separate, removable sockets to fit different sizes of nuts and bolts * Socket head screw, a screw (or bolt) with a cylindrical head containing a socket into which the hexa ...
-based version) delays, most firewall issues with version 8 have been addressed.


A brief revision history

Release History
/ref>


See also

*
ACM International Collegiate Programming Contest The ICPC International Collegiate Programming Contest, known as the ICPC, is an annual multi-tiered competitive programming competition among the universities of the world. Directed by ICPC Executive Director and Baylor Professor Dr. William B. ...
*
Online Judge Competitive programming is a mind sport usually held over the Internet or a local network, involving participants trying to program according to provided specifications. Contestants are referred to as ''sport programmers''. Competitive progr ...


References


External links

*
PC2 Wiki

Competitive Learning Initiative Contest System (CLICS)


Other uses

* PC² is the abbreviation of the Paderborn Center for Parallel Computing, an institute of the Paderborn University, Germany (http://www.upb.de/pc2) {{DEFAULTSORT:Pc2 Programming contests