Video Game Design Program Programming

Total Page:16

File Type:pdf, Size:1020Kb

Video Game Design Program Programming Video Game Design Program Programming When you think of game developers, chances are good you think of a programmer. No surprise there, since code is the core stuff of games. But long gone are the days when a single programmer created an entire game, from code to music and everything between. In fact, no single programmer could write just the code for today's typical commercial game. Specialization is the way of this maturing industry, and you'll want to prepare in advance for your chosen specialty. Programming Sub-Types • Junior Programmer • Lead Programmer • Engine/Tools Programmer • Graphics/Special Effects Programmer • Audio Programmer/Engineer • Artificial Intelligence Programmer • Multiplayer Networking Programmer Junior Programmer If you're new to the new to the video game industry, you'll probably start as a Junior, Entry-Level, or Intern Programmer. To get a job as an Entry-Level Programmer, you must demonstrate your talent, ability to code, and motivation to finish projects. A great way to do this (and perhaps the only way for some companies) is to develop a small game program on your own. On the job, an Entry-Level Programmer usually adds in small elements to the game and learns the basic tools and concepts behind game programming. Beginning with a basis in C++, the junior programmer is expected to learn one or more of the following: AI principles, basic graphics programming, 3D math, physics, sound programming, collision systems, path-finding algorithms and game design theory. This may not be the most glamorous job, but it is the standard way to get your foot in the door. 3D graphics programming is still the most demanded skill, but AI and physics are gaining ground. Lead Programmer The Lead Programmer is partially a manager, and partially a programmer. As Lead Programmer you not only have to write complicated code, but also have to know how to work on and lead a team, and to act as a liaison between the Producer and the programming team. You will lead the programming team in deciding analysis and design issues, what technologies to use (i.e. using Direct3D vs. OpenGL), and decide what work to give to different members of the programming team. During the design phase you will lead the development of the game's technical specification. You must have the capability to code various parts of the game and help out other members of the team, and conduct regular code and performance reviews for all members of the team. You also work closely with the other leads on the art, design and production teams and helps develop schedules and determine milestones. The Lead Programmer is often expected to be an expert in one or more programming specialties such as artificial intelligence, 3D Rendering, 3D animation, physics, multiplayer/networking, or audio. Self-management and reviewing one's own schedule and the schedule of peers are required, as is notifying the Producers of any tasks that may be missing or improperly specified, and evaluates the technical integrity of development process (e.g., build process, tools, pipelines, source code control, backups, etc.). The lead programmer is responsible for the overall structure and implementation of all the code in the game. Engine/Tools Programmer An Engine Programmer helps design and construct the base or the engine on which the game will run. You write the low-level programming behind the rendering and functionality of the engine. For most gaming platforms, an Engine Programmer needs a solid understanding of C/C++, possibly Assembly, mathematical concepts, graphics, collision detection, object oriented programming, and database management. Generally, the Engine Programmer has a very solid understanding of graphics APIs, 3D concepts, physics, and the ability to implement them into a game. Most Engine Programmers are experienced and have worked in different roles on teams with published titles. A Tools Programmer constructs tools to help the artists and game designers interface with the engine. You write the scripting tools that allow the designers to specify actions for the computer-controlled characters; you designs plug-ins for graphics software to help artists integrate textures and backgrounds into the game; and you create map and level editors for level designers. A Tools Programmer needs to have a strong understanding of the game engine, good knowledge of the target systems (PC, or one of the consoles), good communication skills, and this is extremely important, though generally underrated: knowledge of user interface design. A Tools Programmer must design and document your tools to make it possible for designers and artists to understand and utilize them. The better the tools, the faster designers and artists can add their creations to the game, making for a better team and a better product. Graphics/Special Effects Programmer All game programmers are expected to develop domain expertise in graphics programming, but the Graphics Programmer in particular must master the full suite of techniques to realize three dimensional objects inside a two dimensional display. Math expertise (especially linear algebra and advanced calculus) is a crucial skill for this role. As a Graphics Programmer you will need to understand the intricacies of skinning (covering) 3D models, importing files from 3D animation programs, and animation blending. However, a Graphics programmer must also have the artistic eye to implement realistic and fascinating particle effects (like fire and electricity), or at least the ability to work with artists to achieve the desired effect. Additionally, you must be an optimization wizard in order to figure out how to get everything displaying in real time at the highest possible frame rate, with other processes competing for CPU time. The principles behind graphics programming take a combination of deep mathematical education and sheer time spent learning the peculiarities of a particular API, so this position usually requires quite a bit of experience. You can still pick up proven techniques and enhance them or make them faster. It's mostly about pre- calculating everything you can and writing tight code for whatever you can't, while using any multiprocessing available to you. Programmers interested in this field should check out the demo scene, the unofficial international community of extreme graphic effects hackers. There is also a lot of student activity at SIGGRAPH, the yearly computer graphics confab, which has been paying more attention lately to realtime graphics after years of almost exclusive focus on pre-rendered work. Graphics is essentially "solved", the only remaining challenge is real-time. Audio Programmer/Engineer Audio programmers write the software tools and utilities to support sound and music in games, especially interactive and synthesized sound. Depending on how the sound and music are implemented in their particular game, an audio programmer may need a thorough understanding of the MIDI standard, of audio production/ mixing/recording processes, of real time sound synthesis, audio compression standards and signal processing, and interactive music APIs like DirectMusic. This isn't a very common programming specialty at the moment, but as systems and their games become more sophisticated and more cinematic in their use of sound and music, the need for audio specialists will increase. Also, the various consoles (GBA, PS2, GC) all have different ways to play music and sounds, requiring even further specialization. Artificial Intelligence Programmer An Artificial Intelligence (AI) Programmer gives game entities, and perhaps the game itself, an appearance of intelligence by writing rules to govern their behavior. AI is a heavily researched and broad programming topic. Academically, it branches into the areas of Robotics, Biology and Psychology. A beginning AI programmer must study basic algorithms for games and concepts behind AI, such as path finding, patterns, and decision trees. Some more advanced and experimental AI concepts include Deterministic Automata, Finite State Machines, Neural Networks, Genetic Algorithms, Fuzzy State Logic, and A-Life. While it is important to keep up with and understand these academic AI concepts, a practical AI programmer must also be able to code and implement actual, non- theoretical game behavior, and keep it all happening in realtime without a huge processor hit. This may require a multiplicity or combination of tactics, or even a disregard for the purer methods in favor of a quick-and-dirty solution. Above all, the AI programmer needs to know the appropriate method for the task at hand. It's frequently a job of determining the best way to make things "look" smart at a minimal processing cost. Multiplayer Networking Programmer Multiplayer Programmers are some of the most in-demand specialists thanks to the surge in popularity of online games, and the crucial role these programmers play in creating a popular, profitable game. Multiplayer games have unique challenges based on a huge set of variables: the power of the user system, the ever-changing capabilities of the networks, and the architecture of the game server, the billing system, in-game experience management, and game security being just a few. Networked games are under constant siege from a large, technically proficient, and persistent hacker audience, who can detrimentally affect the average customer's satisfaction and happiness. Since online games make money based on the amount of time players spend there, the network programmer is largely responsible for the long-term success or failure the product, and perhaps the entire company. Still interested? If you want to become a Multiplayer Networking Programmer, you must understand these fields thoroughly in addition to the standard game programming fields: client/server architecture, network security, basic network protocols (e.g. TCP/IP or UDP), concurrency, multi-threaded code, synchronization, and network APIs like DirectPlay and Winsock. A Network Programmer must also have a deep understanding of Database creation, management, and administration if your company provides the massive multi-player service on which to play the game.
Recommended publications
  • Attacker Antics Illustrations of Ingenuity
    ATTACKER ANTICS ILLUSTRATIONS OF INGENUITY Bart Inglot and Vincent Wong FIRST CONFERENCE 2018 2 Bart Inglot ◆ Principal Consultant at Mandiant ◆ Incident Responder ◆ Rock Climber ◆ Globetrotter ▶ From Poland but live in Singapore ▶ Spent 1 year in Brazil and 8 years in the UK ▶ Learning French… poor effort! ◆ Twitter: @bartinglot ©2018 FireEye | Private & Confidential 3 Vincent Wong ◆ Principal Consultant at Mandiant ◆ Incident Responder ◆ Baby Sitter ◆ 3 years in Singapore ◆ Grew up in Australia ©2018 FireEye | Private & Confidential 4 Disclosure Statement “ Case studies and examples are drawn from our experiences and activities working for a variety of customers, and do not represent our work for any one customer or set of customers. In many cases, facts have been changed to obscure the identity of our customers and individuals associated with our customers. ” ©2018 FireEye | Private & Confidential 5 Today’s Tales 1. AV Server Gone Bad 2. Stealing Secrets From An Air-Gapped Network 3. A Backdoor That Uses DNS for C2 4. Hidden Comment That Can Haunt You 5. A Little Known Persistence Technique 6. Securing Corporate Email is Tricky 7. Hiding in Plain Sight 8. Rewriting Import Table 9. Dastardly Diabolical Evil (aka DDE) ©2018 FireEye | Private & Confidential 6 AV SERVER GONE BAD Cobalt Strike, PowerShell & McAfee ePO (1/9) 7 AV Server Gone Bad – Background ◆ Attackers used Cobalt Strike (along with other malware) ◆ Easily recognisable IOCs when recorded by Windows Event Logs ▶ Random service name – also seen with Metasploit ▶ Base64-encoded script, “%COMSPEC%” and “powershell.exe” ▶ Decoding the script yields additional PowerShell script with a base64-encoded GZIP stream that in turn contained a base64-encoded Cobalt Strike “Beacon” payload.
    [Show full text]
  • Microsoft Patches Were Evaluated up to and Including CVE-2020-1587
    Honeywell Commercial Security 2700 Blankenbaker Pkwy, Suite 150 Louisville, KY 40299 Phone: 1-502-297-5700 Phone: 1-800-323-4576 Fax: 1-502-666-7021 https://www.security.honeywell.com The purpose of this document is to identify the patches that have been delivered by Microsoft® which have been tested against Pro-Watch. All the below listed patches have been tested against the current shipping version of Pro-Watch with no adverse effects being observed. Microsoft Patches were evaluated up to and including CVE-2020-1587. Patches not listed below are not applicable to a Pro-Watch system. 2020 – Microsoft® Patches Tested with Pro-Watch CVE-2020-1587 Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability CVE-2020-1584 Windows dnsrslvr.dll Elevation of Privilege Vulnerability CVE-2020-1579 Windows Function Discovery SSDP Provider Elevation of Privilege Vulnerability CVE-2020-1578 Windows Kernel Information Disclosure Vulnerability CVE-2020-1577 DirectWrite Information Disclosure Vulnerability CVE-2020-1570 Scripting Engine Memory Corruption Vulnerability CVE-2020-1569 Microsoft Edge Memory Corruption Vulnerability CVE-2020-1568 Microsoft Edge PDF Remote Code Execution Vulnerability CVE-2020-1567 MSHTML Engine Remote Code Execution Vulnerability CVE-2020-1566 Windows Kernel Elevation of Privilege Vulnerability CVE-2020-1565 Windows Elevation of Privilege Vulnerability CVE-2020-1564 Jet Database Engine Remote Code Execution Vulnerability CVE-2020-1562 Microsoft Graphics Components Remote Code Execution Vulnerability
    [Show full text]
  • Command-Line IP Utilities This Document Lists Windows Command-Line Utilities That You Can Use to Obtain TCP/IP Configuration Information and Test IP Connectivity
    Guide to TCP/IP: IPv6 and IPv4, 5th Edition, ISBN 978-13059-4695-8 Command-Line IP Utilities This document lists Windows command-line utilities that you can use to obtain TCP/IP configuration information and test IP connectivity. Command parameters and uses are listed for the following utilities in Tables 1 through 9: ■ Arp ■ Ipconfig ■ Netsh ■ Netstat ■ Pathping ■ Ping ■ Route ■ Tracert ARP The Arp utility reads and manipulates local ARP tables (data link address-to-IP address tables). Syntax arp -s inet_addr eth_addr [if_addr] arp -d inet_addr [if_addr] arp -a [inet_address] [-N if_addr] [-v] Table 1 ARP command parameters and uses Parameter Description -a or -g Displays current entries in the ARP cache. If inet_addr is specified, the IP and data link address of the specified computer appear. If more than one network interface uses ARP, entries for each ARP table appear. inet_addr Specifies an Internet address. -N if_addr Displays the ARP entries for the network interface specified by if_addr. -v Displays the ARP entries in verbose mode. -d Deletes the host specified by inet_addr. -s Adds the host and associates the Internet address inet_addr with the data link address eth_addr. The physical address is given as six hexadecimal bytes separated by hyphens. The entry is permanent. eth_addr Specifies physical address. if_addr If present, this specifies the Internet address of the interface whose address translation table should be modified. If not present, the first applicable interface will be used. Pyles, Carrell, and Tittel 1 Guide to TCP/IP: IPv6 and IPv4, 5th Edition, ISBN 978-13059-4695-8 IPCONFIG The Ipconfig utility displays and modifies IP address configuration information.
    [Show full text]
  • Winsock Is a Standard Application Programming Interface (API)
    www.installsetupconfig.com An Intro to Windows Socket (Winsock2) Programming & C Language What do we have in this session? Winsock Headers and Libraries Initializing Winsock Error Checking and Handling Addressing a Protocol Addressing IPv4 Internet Addresses Some Note inet_ntoa() Function InetNtop() Function InetPton() Function Byte Ordering Creating a Socket Connection-Oriented Communication Server API Functions Binding, bind() Listening, listen() Accepting Connections, accept() Client API Functions TCP States connect() Data Transmission send() and WSASend() WSASendDisconnect() Out-of-Band Data recv() and WSARecv() WSARecvDisconnect() Stream Protocols Scatter-Gather I/O Breaking the Connection shutdown() closesocket() TCP Receiver/Server With select() Example TCP Sender/client Program Example Testing the TCP Client and Server Programs Testing the TCP Client and Server Programs in Private Network Connectionless Communication Receiver Sender Running Both the UDP Receiver/Server and UDP Sender/Client Testing the UDP Client and select Server Programs in Private Network Message-Based Protocols Releasing Socket Resources 1 www.installsetupconfig.com Miscellaneous APIs getpeername() getsockname() WSADuplicateSocket() Windows CE Conclusion The following figure shows the TCP/IP stack for computer communication. Starting with the Open System Interconnection (OSI) seven layers and the TCP/IP stack. The Winsock is a library used for network communication programming for Windows. 7 Application e.g. HTTP, SMTP, SNMP, FTP, Telnet, SSH and Scp, NFS, RTSP etc. 6 Presentation e.g. XDR, ASN.1, SMB, AFP etc. 5 Session e.g. TLS, SSH, ISO 8327 / CCITT X.225, RPC, NetBIOS, ASP etc. 4 Transport e.g. TCP, UDP, RTP, SCTP, SPX, ATP etc. e.g. IP/IPv6, ICMP, IGMP, X.25, CLNP, ARP, RARP, BGP, OSPF, RIP, IPX, 3 Network DDP etc.
    [Show full text]
  • (CMS) Open Database Connectivity
    Avaya™ Call Management System (CMS) Open Database Connectivity 585-780-701 Issue 1.0 May 2002 COMPAS ID 89705 © 2002, Avaya Inc. All Rights Reserved Notice Trademarks Every effort was made to ensure that the information in this document was complete and accurate at the time of printing. However, information The following trademarks are mentioned in this document: is subject to change. • MultiVantage and DEFINITY are registered trademarks of Avaya Inc. Preventing Toll Fraud • Enterprise, Solaris, SPARCserver, Network Terminal Server, “Toll fraud” is the unauthorized use of your telecommunications system Sun, SunSwift, Solstice, DiskSuite, and Ultra are trademarks by an unauthorized party (for example, a person who is not a corporate or registered trademarks of Sun Microsystems, Inc. employee, agent, subcontractor, or working on your company's behalf). • INFORMIX is a registered trademark of Informix Software, Be aware that there may be a risk of toll fraud associated with your Inc. system and that, if toll fraud occurs, it can result in substantial additional • Multiport is a registered trademark of Aurora Technologies, charges for your telecommunications services. Inc. • Windows is a registered trademark of Microsoft, Inc. Avaya Fraud Intervention All other product names mentioned herein are the trademarks of their If you suspect that you are being victimized by toll fraud and you need respective owners. technical assistance or support, call Technical Service Center Toll Fraud Intervention Hotline at +1 800 643 2353 for the United States and Ordering Information Canada. For additional support telephone numbers, see the Avaya web Call: Avaya Publications Center site: Voice +1 800 457 1235 http://www.avaya.com Fax +1 800 457 1764 Select Support, then select Escalation Lists US and International.
    [Show full text]
  • CEWES MSRC/PET TR/99-15 Using Webhla to Integrate HPC FMS
    CEWES MSRC/PET TR/99-15 Using WebHLA to Integrate HPC FMS Modules with Web/Commodity based Distributed Object Technologies of CORBA, Java, COM and XML by Geoffrey C. Fox Wojtek Furmanski Ganesh Krishnamurthy Hasan T. Ozdemir Zeynep Odcikin Ozdemir Tom A. Pulikal Krishnan Rangarajan Ankur Sood 04h01499 Work funded by the DoD High Performance Computing Modernization Program CEWES Major Shared Resource Center through Programming Environment andTraining (PET) Supported by Contract Number: DAHC94-96-C0002 Nichols Research Corporation Views, opinions and/or findings contained in this report are those of the author(s) and should not be con- strued as an official Department of Defense Position, policy, or decision unless so designated by other official documentation. Using WebHLA to Integrate HPC FMS Modules with Web/Commodity based Distributed Object Technologies of CORBA, Java, COM and XML Geoffrey C. Fox, Ph. D., Wojtek Furmanski, Ph. D., Ganesh Krishnamurthy, Hasan T. Ozdemir, Zeynep Odcikin-Ozdemir, Tom A. Pulikal, Krishnan Rangarajan, Ankur Sood Northeast Parallel Architectures Center, Syracuse University 111 College Place, Syracuse University, Syracuse NY 13244-4100 {gcf, furm, gkrishna, timucin, zeynep, tapulika, krrangar, asood} @ npac.syr.edu Keywords: Interactive Simulation, Military, Personal Computers, Standards ABSTRACT HLA standards for interoperability between various DoD Modeling and Simulation paradigms are being enforced in parallel with the rapid onset of new Object Web / Commodity standards for distributed objects and componentware, emergent at the crossroads of CORBA, COM, Java, and XML technologies. WebHLA explores synergies between and integrates both trends by offering Object Web based implementation of the HLA framework. Our goal is to deliver a uniform platform that facilitates conversion of legacy codes to and development of new codes in compliance with HLA, HPC and Object Web standards.
    [Show full text]
  • A Novel Method to Manage Network Requirements S
    International Journal of Pure and Applied Mathematics Volume 116 No. 13 2017, 9-15 ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version) url: http://www.ijpam.eu Special Issue ijpam.eu A NOVEL METHOD TO MANAGE NETWORK REQUIREMENTS S.Pothumani 1, Dr.J.Hameed Hussain 2 1Assistant Professor , Dept. of CSE, Bharath University, Chennai, Tamil Nadu, India 2Dean Engineering , Bharath University, Chennai, Tamil Nadu, India [email protected], [email protected] Abstract: The aim of this paper is to fulfill all possible a message to any client connected in the enterprise network requirements of a network administrator regarding his and Search for the given computer in the network. And also network. This also provides an efficient way for the displays all shared folders of a specified computer [1,2]. system administrator to work offsite and who needs to keep intact with his PC and do his work, so that they can 2. Related work share their PC’s with each other. The system administrator working in a multistoried building can use The existing system is a normal Network Management Tool this tool to manage the network by logging into the which can be used only for the domain based network. It server system in the main branch through LAN or has some difficulties. They are Administrator could not internet using the IP address of the server and control his control the network when he is out of station, A Remote- system and network or can work with the others. Based tool is not yet found ,Remote accessing of any server Network scrutinizer is a software tool that helps an is not possible.
    [Show full text]
  • DENICOMP SYSTEMS Winsock RCP/RSH/REXEC for Win32 Copyright ? 2002 Denicomp Systems All Rights Reserved
    DENICOMP SYSTEMS Winsock RCP/RSH/REXEC for Win32 Copyright ? 2002 Denicomp Systems All rights reserved. INTRODUCTION...............................................................................................................................................1 REQUIREMENTS..............................................................................................................................................1 INSTALLATION ................................................................................................................................................1 REMOVING WINSOCK RCP/RSH/REXEC....................................................................................................2 SECURITY.........................................................................................................................................................2 RSH/REXEC AND FIREWALLS...................................................................................................................3 CONFIGURING WINSOCK RCP/RSH/REXEC .............................................................................................4 WINSOCK RSH CONFIGURATION OPTIONS..........................................................................................5 WINSOCK REXEC CONFIGURATION OPTIONS.....................................................................................6 WINSOCK RCP CONFIGURATION OPTIONS..........................................................................................7 CONFIGURATION NOTES ..........................................................................................................................8
    [Show full text]
  • Ingres 10.1 Connectivity Guide
    Ingres 10S Connectivity Guide ING-101-CN-05 This Documentation is for the end user's informational purposes only and may be subject to change or withdrawal by Actian Corporation ("Actian") at any time. This Documentation is the proprietary information of Actian and is protected by the copyright laws of the United States and international treaties. It is not distributed under a GPL license. You may make printed or electronic copies of this Documentation provided that such copies are for your own internal use and all Actian copyright notices and legends are affixed to each reproduced copy. You may publish or distribute this document, in whole or in part, so long as the document remains unchanged and is disseminated with the applicable Actian software. Any such publication or distribution must be in the same manner and medium as that used by Actian, e.g., electronic download via website with the software or on a CD- ROM. Any other use, such as any dissemination of printed copies or use of this documentation, in whole or in part, in another publication, requires the prior written consent from an authorized representative of Actian. To the extent permitted by applicable law, ACTIAN PROVIDES THIS DOCUMENTATION "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. IN NO EVENT WILL ACTIAN BE LIABLE TO THE END USER OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USER OF THIS DOCUMENTATION, INCLUDING WITHOUT LIMITATION, LOST PROFITS, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF ACTIAN IS EXPRESSLY ADVISED OF SUCH LOSS OR DAMAGE.
    [Show full text]
  • The Old New Thing: Practical Development Throughout The
    Praise for The Old New Thing “Raymond Chen is the original raconteur of Windows.” —Scott Hanselman, ComputerZen.com “Raymond has been at Microsoft for many years and has seen many nuances of Windows that others could only ever hope to get a glimpse of. With this book, Raymond shares his knowledge, experience, and anecdotal stories, allowing all of us to get a better understanding of the operating system that affects millions of people every day. This book has something for everyone, is a casual read, and I highly recommend it!” —Jeffrey Richter, Author/Consultant, Cofounder of Wintellect “Very interesting read. Raymond tells the inside story of why Windows is the way it is.” —Eric Gunnerson, Program Manager, Microsoft Corporation “Absolutely essential reading for understanding the history of Windows, its intricacies and quirks, and why they came about.” —Matt Pietrek, MSDN Magazine’s Under the Hood Columnist “Raymond Chen has become something of a legend in the software industry, and in this book you’ll discover why. From his high-level reminiscences on the design of the Windows Start button to his low-level discussions of GlobalAlloc that only your inner-geek could love, The Old New Thing is a captivating collection of anecdotes that will help you to truly appreciate the difficulty inherent in designing and writing quality software.” —Stephen Toub, Technical Editor, MSDN Magazine This page intentionally left blank THE OLD NEW THING This page intentionally left blank THE OLD NEW THING Practical Development ThroughoutT the Evolution of Windows Raymond Chen Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Capetown • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks.
    [Show full text]
  • Performance Tuning Guidelines for Windows Server 2012 R2
    Performance Tuning Guidelines for Windows Server 2012 R2 Copyright information This document is provided "as-is". Information and views expressed in this document, including URL and other Internet website references, may change without notice. Some examples depicted herein are provided for illustration only and are fictitious. No real association or connection is intended or should be inferred. This document does not provide you with any legal rights to any intellectual property in any Microsoft product. You may copy and use this document for your internal, reference purposes. This document is confidential and proprietary to Microsoft. It is disclosed and can be used only pursuant to a nondisclosure agreement. © 2012 Microsoft. All rights reserved. Internet Explorer, Microsoft, TechNet, Windows, and Excel are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners. Contents Performance Tuning Guidelines for Windows Server 2012 R2 ...................................................8 Performance Tuning for Server Hardware ................................................................................9 See Also .............................................................................................................................9 Server Hardware Performance Considerations .........................................................................9 See Also ........................................................................................................................... 14
    [Show full text]
  • Mellanox Winof VPI User Manual Rev 5.10
    Mellanox WinOF VPI User Manual Rev 5.10 www.mellanox.com Rev 5.10 NOTE: THIS HARDWARE, SOFTWARE OR TEST SUITE PRODUCT (“PRODUCT(S)”) AND ITS RELATED DOCUMENTATION ARE PROVIDED BY MELLANOX TECHNOLOGIES “AS-IS” WITH ALL FAULTS OF ANY KIND AND SOLELY FOR THE PURPOSE OF AIDING THE CUSTOMER IN TESTING APPLICATIONS THAT USE THE PRODUCTS IN DESIGNATED SOLUTIONS. THE CUSTOMER'S MANUFACTURING TEST ENVIRONMENT HAS NOT MET THE STANDARDS SET BY MELLANOX TECHNOLOGIES TO FULLY QUALIFY THE PRODUCT(S) AND/OR THE SYSTEM USING IT. THEREFORE, MELLANOX TECHNOLOGIES CANNOT AND DOES NOT GUARANTEE OR WARRANT THAT THE PRODUCTS WILL OPERATE WITH THE HIGHEST QUALITY. ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL MELLANOX BE LIABLE TO CUSTOMER OR ANY THIRD PARTIES FOR ANY DIRECT, INDIRECT, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES OF ANY KIND (INCLUDING, BUT NOT LIMITED TO, PAYMENT FOR PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY FROM THE USE OF THE PRODUCT(S) AND RELATED DOCUMENTATION EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Mellanox Technologies 350 Oakmead Parkway Suite 100 Sunnyvale, CA 94085 U.S.A. www.mellanox.com Tel: (408) 970-3400 Fax: (408) 970-3403 © Copyright 2015. Mellanox Technologies.
    [Show full text]