Tag: OS

  • What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc.

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc.

    A Linux engineer is an engineer who specializes in handling Linux among infrastructure engineers. This time, I would like to introduce the detailed work contents, the annual income that you actually get, and the future demand that you are worried about if you aim from now on.

     

    1. What is a Linux engineer?

    A Linux engineer is a type of infrastructure engineer, especially a server engineer, and refers to an engineer who specializes in using the OS called Linux.

    1.1 Linux engineer definition

    Now, I would like to explain the definition of Linux engineer in a little more detail.

     

    ■ A type of infrastructure engineer

    Linux engineers are occupations that belong to “infrastructure engineers” when classified into major categories. Infrastructure engineers are mainly in charge of IT infrastructure design, construction, management, and transportation, and the occupations called network engineers and server engineers fall under this category of infrastructure engineers. Among these server engineers, engineers who specialize in using Linux are called Linux engineers.

    What is an infrastructure engineer? The actual work content, skills, career, qualifications, and future potential are all disclosed!

     

    ■ Linux-specific human resources

    As mentioned above, a Linux engineer is an infrastructure engineer who specializes in Linux.

    Linux is currently the mainstream server OS . The reason is that it uses the GPL (General Public License) license system, which allows you to freely modify and redistribute it, that is, it can be used free of charge. Therefore, it is cheaper and more cost effective than installing a paid server OS.

    The fact that you can modify it more freely means that you can see the contents of the code. Therefore, when an error occurs, it has the advantage of being easy to identify where it occurred.

    In addition, since the configuration can be changed flexibly, many ultra-lightweight distributions are offered to take advantage of this. Therefore, it is easy to operate lightweight even with low performance equipment.

    5 Linux distributions! Introducing recommended apps!

    2. Roles and work contents of Linux engineers

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc. [Freelance engineer project information | Professional engineer]

    The work of a Linux engineer is as follows.

    Requirement definitionHear customer requests and consider what to configure
    designConsider which hardware to use and what settings to use
    constructionProcure and connect the actual machine and set according to the designed contents
    testMake sure it’s done as designed
    Operation / maintenanceMonitor the operating status and respond when trouble occurs

    2.1 Requirements definition

    First, we will hear from the customer about the required functions and performance, and consider what kind of system to build. We will consider the direction of Linux server design and aim to build a highly usable and highly reliable infrastructure. At this stage, a thorough pre-assessment and POC will be conducted to determine the applicability of OSS products, virtualization, and migration.

    2.2 Design

    Consider the standard configuration. If necessary, perform “security design” and “select driver and firmware versions” while being aware of compatibility with the hardware to be used. Also, the setting values ​​of various servers are decided here. In addition, it is necessary to make detailed decisions such as log management and other measures after the start of operation.

    2.3 Build

    We will procure the equipment and build it by actually connecting it. We will install his OS (Linux) and middleware (Apache and MySQL) on the server equipment according to the determined standard configuration. Here, it is necessary to firmly build a highly usable and highly reliable infrastructure.

    2.4 test

    Make a detailed check to see if it works as described in the design document.

    2.5 Operation / Maintenance

    We monitor the built server every day to see if it is operating normally, and if a failure occurs, we will promptly troubleshoot it.

    3. Skills required of Linux engineers

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc. [Freelance engineer project information | Professional engineer]

    The skills required of Linux engineers are not limited to Linux skills and knowledge. This section introduces the skills required for Linux engineers other than those related to Linux.

    3.1 Communication skills

    Communication skills are also important for smooth communication with customers and accurate requirement definition.

    IT infrastructure is being introduced not only in IT-related industries, but also in services in various fields and scales such as distribution and manufacturing. In other words, not all customers are knowledgeable about IT infrastructure and Linux, so the skills to extract and understand what customers really need are important.

    If there is a discrepancy in recognition at the requirement definition stage, it may cause service down or error later, and it may damage the customer.

    3.2 High level of understanding and development experience of various open source software (OSS)

    In order to meet the various needs of customers, it is also important to have knowledge and utilization skills of various open source software (OSS) other than Linux.

    3.3 Assessment

    In the work of Linux engineers, there are many projects such as migrating existing systems to Linux and developing systems that meet customer requirements by utilizing OSS.

    It is necessary to thoroughly perform an assessment * 1 and PoC * 2 in advance to determine whether OSS products are applicable, virtualizable, and migrateable. In addition, it is necessary to consider and formulate a migration method, evaluate the degree of impact on performance and operation due to virtualization, and formulate a work plan for each process.

    Therefore, knowledge that enables accurate assessment is required.

    * 1 Assessment: Evaluation of design and migration based on surveys and analysis conducted on the desk, etc.

    * 2 PoC (Proof of Concept): Proof of concept = verifying whether new concepts and ideas are feasible

    3.4 Business knowledge such as accounting and production control

    Especially for business applications, when the purpose is to develop applications such as accounting and production control, the skill to have business knowledge suitable for the site and to compile specifications from the user’s point of view as appropriate. You will need.

    3.5 Programming skills

    In order to design a system, even non-programmers need to have a good understanding of what programming can do.

    Programming skills are also important for Linux engineers, as there are occasions when immediate code correction is required in the field.

    4. Qualifications to help Linux engineers

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc. [Freelance engineer project information | Professional engineer]

    There are two qualifications that can be useful to Linux engineers: Each test has the following characteristics.

    • LinuC:
    Qualifications that emphasize being in line with business practices in USA

    • LPIC:
    An international exam that is qualified outside of USA

    4.1 LinuC

    LinuC is a test that places particular emphasis on being in line with the practices of Linux engineers in USA. Especially for those who want to become an infrastructure engineer in the future , this qualification is especially recommended because it gives them the knowledge necessary for practical work.

    Application receptionas needed
    test dayMonday-Saturday, excluding holidays
    Examination hallPearson VUE official test venues nationwide
    [ List of test venues (test centers) ]
    PrerequisitesLinuC-1: None
    LinuC-2: Have a valid LinuC-1
    LinuC-3: Have a valid LinuC-2
    Examination fee
    (tax included, per subject)
    LinuC-1: 16500 USD
    LinuC-2: 16500 USD
    LinuC-3: 16500 USD

     

     As of December 2016, it was announced that 180,000 people have been certified worldwide. This qualification is recommended for those who are also considering overseas .

    Application receptionas needed
    test dayMonday-Saturday, excluding holidays
    Examination hallPearson VUE official test venues nationwide
    [ List of test venues (test centers) ]
    PrerequisitesLPIC-1: None
    LPIC-2: Have a valid LPIC-1
    LPIC-3: Have a valid LPIC-2
    Examination fee
    (tax included, per subject)
    LPIC-1: 30,000 USD
    LPIC-2: 30,000 USD
    LPIC-3: 30,000 USD

     

    What kind of qualification is LPIC? I summarized from the difficulty level to the study method

    5. Estimated annual income for Linux engineers

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc. [Freelance engineer project information | Professional engineer]

    According to the announcement of average annual income.jp, the average annual income of all infrastructure engineers is 5.5 million USD.

    In particular, the demand for infrastructure engineers is increasing year by year, and as a result, the average annual income seems to be on the rise due to the shortage of engineers. In some cases, the maximum annual income exceeds 10 million USD.

    The average annual income of the above-mentioned “LPIC” holders is 4.5 million USDto 6.5 million USD.

    6. The future of Linux engineers

    What is a Linux engineer? Explains work content, annual income, qualifications, current demand, etc. [Freelance engineer project information | Professional engineer]

    If you want to become a Linux engineer, you may be wondering what will happen in the future even if it is good now. In this article, I would like to introduce the future potential of Linux engineers.

    6.1 Demand for infrastructure engineers is stable

    Recently, the number of cases where the system is built on the cloud instead of the actual machine has increased, but the demand for Linux is still high.

    This is because AWS (Amazon Web Service) , a popular cloud service, offers ” Amazon Linux ” that can be used in much the same way as a type of Linux called ” Cent OS ” . You can also build virtual machines using “Cent OS” on GCP (Google Cloud Platform).

    For these reasons, the demand for infrastructure engineers who can handle Linux will not decline in the future.

    Is the LAMP environment old? Explaining how to build a LAMP environment on AWS and future trends

    6.2 Linux is an important skill in the cloud era

    LinuC, which is a qualification for Linux engineers, was revised in 2023 to include not only physical servers but also on-premises and public cloud utilization.

    Previously, the scope of questions was limited to primitive commands used on physical servers, but after the revision, knowledge of integrated monitoring and automation tools is also required.

    In addition, such public cloud engineers are receiving increasing attention, and engineers with Linux expertise used there are also in increasing demand .

    The range of questions for LinuC will be revised from April 2023! We interviewed   about the difficulty level and the merits of acquiring qualifications.

    7. Summary

    Infrastructure engineers are a type of job that will continue to be in demand. By deepening your knowledge of Linux, you will be able to apply it more and it will be useful in any field. If you are aiming to become an infrastructure engineer, please learn about Linux as well.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • What is DevOps that you often hear? I will explain in an easy-to-understand manner

    What is DevOps that you often hear? I will explain in an easy-to-understand manner

    In recent years, when agile-like development methods have become widespread, the term “DevOps” has become well known.
    There is no strict definition for the word DevOps, so people may think differently and have a vague image.

    In this article, we will explain in an easy-to-understand manner the concept of DevOps and specific approaches.

    1. What is DevOps?

    Although the word DevOps has no clear definition, it is widely known with the following implications.

    DevOps is a concept that shows various efforts to increase the value of business by developing and operating a system in cooperation with a development team ( Dev elopment) and an operation team ( Operation s ) . So what was the idea behind DevOps in the first place?

    1.1 Purpose of DevOps

    The purpose of DevOps depends on the environment, but
    “Developers and operators work together to provide users with products and services quickly and continuously. ,” depending on the environment .

    In the first place, the background to the birth of DevOps is that with the development of the IT industry, the software development period has been shortened, and the need for flexible response to various changes has increased. As a result, the development side
    who wants to proceed with development one after another and develop new services, and the operation side who wants to maintain stable service operation. tend to conflict, and various problems are likely to occur.

    Therefore, based on the idea of ​​DevOps, there is a movement to increase the value of the business by solving the problems on the development side and the operation side and implementing various efforts to realize DevOps.

    The concept of DevOps and specific initiatives are described in the next section.

    2. DevOps concept

    DevOps is based on the following idea advocated by engineers of the photo sharing service “Flickr”.

     

    [DevOps concept]
    ◆ Respect Respect
    each other . Treating with compassion leads to smooth communication

    ◆ Trust all members
    involved in the Trust system Trust system

    ◆ Healthy attitude about failure Take a healthy attitude without blaming the
    other person for failure person for failure

    ◆ Avoiding Blame
    Do not blame the other person . Don’t blame it because mistakes can happen

     

    In order to realize DevOps, it is important for all team members to fully understand this idea, and for each and every one of them to be aware of it and act toward their goals.

    3. Specific DevOps Initiatives

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    The figure is an example of the process flow that realizes DevOps.

    As a concrete initiative, we will release the product in a short cycle, take in feedback from the user while the service is running, automate the series of flow from development plan to implementation, test, deployment, and speedily Make additional features and improvements.

    It is possible to proceed efficiently by using various tools suitable for executing each process.

    In the next section, we will give a brief explanation of the contents of each process and the tools that are often used to realize DevOps.

    3.1 DevOps process

    3.1.1 Plan (PLAN)

    Determine the requirements for the application to be developed, the execution plan of each process such as infrastructure and monitoring.

     

    3.1.2 Build (BUILD)

    It is a process of creating an executable file and a distribution package based on the developed source code.
    Often, the series of steps involved in this build is automated.

     

    3.1.3 CONTINUOUS INTEGRATION

    Continuous integration is “committing daily developed source code etc. to a configuration management file and automatically executing builds and tests “.

    Frequent builds and tests can help you detect bugs early, improve software quality, and reduce software release times.
    Continuous integration stands for CONTINUOUS INTEGRATION “CI” .

    There is also a technique called CONTINUOUS DELIVERY that automates the entire release process, not just build and test .

     

    3.1.4 Deploy (DEPLOY)

    Deploying simply means “making it ready for use” , which makes the files that are made executable by the build workable.
    Perform continuous integration and automatically deploy the built application to production if there are no problems.

     

    3.1.5 OPERATE

    Here, it is a process also called a “monitor” that monitors the performance of the server and application access, response time, and so on.
    Decide what to monitor while considering not to increase the load due to the accumulation of monitoring data.
    At the beginning of the introduction, narrow down the items to the minimum necessary.

    [Main items to be monitored]
    ◆ Server CPU usage rate, memory usage rate, number of processes, number of errors
    ◆ Confirmation of application processes, number of accesses, response time

     

    3.1.6 CONTINUOUS FEEDBACK

    Ensure that you continue to receive user feedback, such as by configuring a service desk that you can customize for your users.
    This allows you to quickly understand system requests and changes and reflect them in the development process.

    3.2 Tools used to achieve DevOps

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    Many tools are used to effectively implement DevOps.
    Each tool has various characteristics, and it is necessary to consider and determine the tool to be used depending on the software to be developed and the combination of multiple tools.

    3.2.1 Virtualization tools

    ◆ Docker

    It virtualizes the application execution environment and automatically configures the execution environment.
    A lightweight and disposable development environment can be prepared, so you can recreate and rebuild the server at any time.
    In addition, since the same thing as the production environment can be reproduced in the development environment, it is possible to test and check the operation in the development environment and reflect it in the production environment as it is.

    3.2.2 Configuration management tool

    ◆ Ansible
    ◆ Chef

    Manages and controls the configuration around the server and infrastructure.
    By automating operations such as construction, testing, and operation, efficiency can be improved and work time can be shortened.

    3.2.3 CI / CD tools

    ◆ Jenkins
    ◆ CircleCI

    Automatically run source code builds and tests.

    3.2.4 Monitor Tool

    ◆ Zabbix
    ◆ Nagios

    It automatically monitors servers and applications.

    3.2.5 Communication tools

    ◆ Slack

    In order to ensure smooth communication between the development team and the operations team, we use chat tools to communicate in an open situation.

    3.2.6 Test automation tool

    ◆ Selenium

    Automation of unit tests, integration tests, application tests, etc. enables improvement of test quality and effective utilization of human and system resources, leading to improvement of software quality.

    3.2.7 Source code / version control tools

    ◆ GitHub
    ◆ git

    Source code and version control are indispensable as the convenience of software increases and the number of frequent changes and additional functions becomes more complicated.

    4. Summary

    If DevOps can be realized well, it can be developed and operated efficiently, and it has the advantage of being able to provide better services to users quickly.

    In order for both sides to work efficiently beyond the boundaries of the development team and the operations team, everyone in the entire organization should clearly understand the purpose of “What is DevOps for?” Toward the same goal. It is important to keep it.
    With that attitude in mind, in order to bring DevOps to a level that can be incorporated into actual development and operation, it is good to first gradually understand the mechanism of DevOps and acquire knowledge of the tools to be introduced. Probably.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • What is DevOps that you often hear? I will explain in an easy-to-understand manner

    What is DevOps that you often hear? I will explain in an easy-to-understand manner

    In recent years, when agile-like development methods have become widespread, the term “DevOps” has become well known.
    There is no strict definition for the word DevOps, so people may think differently and have a vague image.

    In this article, we will explain in an easy-to-understand manner the concept of DevOps and specific approaches.

    1. What is DevOps?

    Although the word DevOps has no clear definition, it is widely known with the following implications.

    DevOps is a concept that shows various efforts to increase the value of business by developing and operating a system in cooperation with a development team ( Dev elopment) and an operation team ( Operation s ) . So what was the idea behind DevOps in the first place?

    1.1 Purpose of DevOps

    The purpose of DevOps depends on the environment, but
    “Developers and operators work together to provide users with products and services quickly and continuously. ,” depending on the environment .

    In the first place, the background to the birth of DevOps is that with the development of the IT industry, the software development period has been shortened, and the need for flexible response to various changes has increased. As a result, the development side
    who wants to proceed with development one after another and develop new services, and the operation side who wants to maintain stable service operation. tend to conflict, and various problems are likely to occur.

    Therefore, based on the idea of ​​DevOps, there is a movement to increase the value of the business by solving the problems on the development side and the operation side and implementing various efforts to realize DevOps.

    The concept of DevOps and specific initiatives are described in the next section.

    2. DevOps concept

    DevOps is based on the following idea advocated by engineers of the photo sharing service “Flickr”.

     

    [DevOps concept]
    ◆ Respect Respect
    each other . Treating with compassion leads to smooth communication

    ◆ Trust all members
    involved in the Trust system Trust system

    ◆ Healthy attitude about failure Take a healthy attitude without blaming the
    other person for failure person for failure

    ◆ Avoiding Blame
    Do not blame the other person . Don’t blame it because mistakes can happen

     

    In order to realize DevOps, it is important for all team members to fully understand this idea, and for each and every one of them to be aware of it and act toward their goals.

    3. Specific DevOps Initiatives

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    The figure is an example of the process flow that realizes DevOps.

    As a concrete initiative, we will release the product in a short cycle, take in feedback from the user while the service is running, automate the series of flow from development plan to implementation, test, deployment, and speedily Make additional features and improvements.

    It is possible to proceed efficiently by using various tools suitable for executing each process.

    In the next section, we will give a brief explanation of the contents of each process and the tools that are often used to realize DevOps.

    3.1 DevOps process

    3.1.1 Plan (PLAN)

    Determine the requirements for the application to be developed, the execution plan of each process such as infrastructure and monitoring.

     

    3.1.2 Build (BUILD)

    It is a process of creating an executable file and a distribution package based on the developed source code.
    Often, the series of steps involved in this build is automated.

     

    3.1.3 CONTINUOUS INTEGRATION

    Continuous integration is “committing daily developed source code etc. to a configuration management file and automatically executing builds and tests “.

    Frequent builds and tests can help you detect bugs early, improve software quality, and reduce software release times.
    Continuous integration stands for CONTINUOUS INTEGRATION “CI” .

    There is also a technique called CONTINUOUS DELIVERY that automates the entire release process, not just build and test .

     

    3.1.4 Deploy (DEPLOY)

    Deploying simply means “making it ready for use” , which makes the files that are made executable by the build workable.
    Perform continuous integration and automatically deploy the built application to production if there are no problems.

     

    3.1.5 OPERATE

    Here, it is a process also called a “monitor” that monitors the performance of the server and application access, response time, and so on.
    Decide what to monitor while considering not to increase the load due to the accumulation of monitoring data.
    At the beginning of the introduction, narrow down the items to the minimum necessary.

    [Main items to be monitored]
    ◆ Server CPU usage rate, memory usage rate, number of processes, number of errors
    ◆ Confirmation of application processes, number of accesses, response time

     

    3.1.6 CONTINUOUS FEEDBACK

    Ensure that you continue to receive user feedback, such as by configuring a service desk that you can customize for your users.
    This allows you to quickly understand system requests and changes and reflect them in the development process.

    3.2 Tools used to achieve DevOps

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    Many tools are used to effectively implement DevOps.
    Each tool has various characteristics, and it is necessary to consider and determine the tool to be used depending on the software to be developed and the combination of multiple tools.

    3.2.1 Virtualization tools

    ◆ Docker

    It virtualizes the application execution environment and automatically configures the execution environment.
    A lightweight and disposable development environment can be prepared, so you can recreate and rebuild the server at any time.
    In addition, since the same thing as the production environment can be reproduced in the development environment, it is possible to test and check the operation in the development environment and reflect it in the production environment as it is.

    3.2.2 Configuration management tool

    ◆ Ansible
    ◆ Chef

    Manages and controls the configuration around the server and infrastructure.
    By automating operations such as construction, testing, and operation, efficiency can be improved and work time can be shortened.

    3.2.3 CI / CD tools

    ◆ Jenkins
    ◆ CircleCI

    Automatically run source code builds and tests.

    3.2.4 Monitor Tool

    ◆ Zabbix
    ◆ Nagios

    It automatically monitors servers and applications.

    3.2.5 Communication tools

    ◆ Slack

    In order to ensure smooth communication between the development team and the operations team, we use chat tools to communicate in an open situation.

    3.2.6 Test automation tool

    ◆ Selenium

    Automation of unit tests, integration tests, application tests, etc. enables improvement of test quality and effective utilization of human and system resources, leading to improvement of software quality.

    3.2.7 Source code / version control tools

    ◆ GitHub
    ◆ git

    Source code and version control are indispensable as the convenience of software increases and the number of frequent changes and additional functions becomes more complicated.

    4. Summary

    If DevOps can be realized well, it can be developed and operated efficiently, and it has the advantage of being able to provide better services to users quickly.

    In order for both sides to work efficiently beyond the boundaries of the development team and the operations team, everyone in the entire organization should clearly understand the purpose of “What is DevOps for?” Toward the same goal. It is important to keep it.
    With that attitude in mind, in order to bring DevOps to a level that can be incorporated into actual development and operation, it is good to first gradually understand the mechanism of DevOps and acquire knowledge of the tools to be introduced. Probably.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • What is DevOps that you often hear? I will explain in an easy-to-understand manner

    What is DevOps that you often hear? I will explain in an easy-to-understand manner

    In recent years, when agile-like development methods have become widespread, the term “DevOps” has become well known.
    There is no strict definition for the word DevOps, so people may think differently and have a vague image.

    In this article, we will explain in an easy-to-understand manner the concept of DevOps and specific approaches.

    1. What is DevOps?

    Although the word DevOps has no clear definition, it is widely known with the following implications.

    DevOps is a concept that shows various efforts to increase the value of business by developing and operating a system in cooperation with a development team ( Dev elopment) and an operation team ( Operation s ) . So what was the idea behind DevOps in the first place?

    1.1 Purpose of DevOps

    The purpose of DevOps depends on the environment, but
    “Developers and operators work together to provide users with products and services quickly and continuously. ,” depending on the environment .

    In the first place, the background to the birth of DevOps is that with the development of the IT industry, the software development period has been shortened, and the need for flexible response to various changes has increased. As a result, the development side
    who wants to proceed with development one after another and develop new services, and the operation side who wants to maintain stable service operation. tend to conflict, and various problems are likely to occur.

    Therefore, based on the idea of ​​DevOps, there is a movement to increase the value of the business by solving the problems on the development side and the operation side and implementing various efforts to realize DevOps.

    The concept of DevOps and specific initiatives are described in the next section.

    2. DevOps concept

    DevOps is based on the following idea advocated by engineers of the photo sharing service “Flickr”.

     

    [DevOps concept]
    ◆ Respect Respect
    each other . Treating with compassion leads to smooth communication

    ◆ Trust all members
    involved in the Trust system Trust system

    ◆ Healthy attitude about failure Take a healthy attitude without blaming the
    other person for failure person for failure

    ◆ Avoiding Blame
    Do not blame the other person . Don’t blame it because mistakes can happen

     

    In order to realize DevOps, it is important for all team members to fully understand this idea, and for each and every one of them to be aware of it and act toward their goals.

    3. Specific DevOps Initiatives

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    The figure is an example of the process flow that realizes DevOps.

    As a concrete initiative, we will release the product in a short cycle, take in feedback from the user while the service is running, automate the series of flow from development plan to implementation, test, deployment, and speedily Make additional features and improvements.

    It is possible to proceed efficiently by using various tools suitable for executing each process.

    In the next section, we will give a brief explanation of the contents of each process and the tools that are often used to realize DevOps.

    3.1 DevOps process

    3.1.1 Plan (PLAN)

    Determine the requirements for the application to be developed, the execution plan of each process such as infrastructure and monitoring.

     

    3.1.2 Build (BUILD)

    It is a process of creating an executable file and a distribution package based on the developed source code.
    Often, the series of steps involved in this build is automated.

     

    3.1.3 CONTINUOUS INTEGRATION

    Continuous integration is “committing daily developed source code etc. to a configuration management file and automatically executing builds and tests “.

    Frequent builds and tests can help you detect bugs early, improve software quality, and reduce software release times.
    Continuous integration stands for CONTINUOUS INTEGRATION “CI” .

    There is also a technique called CONTINUOUS DELIVERY that automates the entire release process, not just build and test .

     

    3.1.4 Deploy (DEPLOY)

    Deploying simply means “making it ready for use” , which makes the files that are made executable by the build workable.
    Perform continuous integration and automatically deploy the built application to production if there are no problems.

     

    3.1.5 OPERATE

    Here, it is a process also called a “monitor” that monitors the performance of the server and application access, response time, and so on.
    Decide what to monitor while considering not to increase the load due to the accumulation of monitoring data.
    At the beginning of the introduction, narrow down the items to the minimum necessary.

    [Main items to be monitored]
    ◆ Server CPU usage rate, memory usage rate, number of processes, number of errors
    ◆ Confirmation of application processes, number of accesses, response time

     

    3.1.6 CONTINUOUS FEEDBACK

    Ensure that you continue to receive user feedback, such as by configuring a service desk that you can customize for your users.
    This allows you to quickly understand system requests and changes and reflect them in the development process.

    3.2 Tools used to achieve DevOps

    What is DevOps that you often hear? I will explain in an easy-to-understand manner [Freelance engineer project information | Professional engineer]

    Many tools are used to effectively implement DevOps.
    Each tool has various characteristics, and it is necessary to consider and determine the tool to be used depending on the software to be developed and the combination of multiple tools.

    3.2.1 Virtualization tools

    ◆ Docker

    It virtualizes the application execution environment and automatically configures the execution environment.
    A lightweight and disposable development environment can be prepared, so you can recreate and rebuild the server at any time.
    In addition, since the same thing as the production environment can be reproduced in the development environment, it is possible to test and check the operation in the development environment and reflect it in the production environment as it is.

    3.2.2 Configuration management tool

    ◆ Ansible
    ◆ Chef

    Manages and controls the configuration around the server and infrastructure.
    By automating operations such as construction, testing, and operation, efficiency can be improved and work time can be shortened.

    3.2.3 CI / CD tools

    ◆ Jenkins
    ◆ CircleCI

    Automatically run source code builds and tests.

    3.2.4 Monitor Tool

    ◆ Zabbix
    ◆ Nagios

    It automatically monitors servers and applications.

    3.2.5 Communication tools

    ◆ Slack

    In order to ensure smooth communication between the development team and the operations team, we use chat tools to communicate in an open situation.

    3.2.6 Test automation tool

    ◆ Selenium

    Automation of unit tests, integration tests, application tests, etc. enables improvement of test quality and effective utilization of human and system resources, leading to improvement of software quality.

    3.2.7 Source code / version control tools

    ◆ GitHub
    ◆ git

    Source code and version control are indispensable as the convenience of software increases and the number of frequent changes and additional functions becomes more complicated.

    4. Summary

    If DevOps can be realized well, it can be developed and operated efficiently, and it has the advantage of being able to provide better services to users quickly.

    In order for both sides to work efficiently beyond the boundaries of the development team and the operations team, everyone in the entire organization should clearly understand the purpose of “What is DevOps for?” Toward the same goal. It is important to keep it.
    With that attitude in mind, in order to bring DevOps to a level that can be incorporated into actual development and operation, it is good to first gradually understand the mechanism of DevOps and acquire knowledge of the tools to be introduced. Probably.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • 3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

    3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

     

    What is machine learning

    Machine learning is one of the most important aspects of AI development, and is an effective method for predicting numerical values ​​and identifying and classifying images.

    One of the machine learning methods is ” neural network . A neural network is a technique inspired by the structure of the human brain and mimics the way neurons work.

    Some of the neural networks include multi-layer perceptrons and deep learning.

    What is deep learning?

    Deep learning was developed to enhance the capabilities of the neural network mentioned in the previous section.

    Deep learning is a neural network with a multi-layered structure, and is currently the mainstream of AI development.

    The difference between machine learning and deep learning is that machine learning learns rules from data by itself. In deep learning, the computer itself learns the feature values ​​that must be specified in machine learning.

    To put it simply, machine learning involves specifying feature values ​​by humans, and deep learning involves learning feature values ​​as well.

    Currently, deep learning is used for image recognition , speech processing, natural language processing , etc. a variety of situations around the world, including

    From here, let’s see what kind of PC should be used when actually performing deep learning.

    Parts required for deep learning PC

    The following five parts are required for a PC for deep learning.

    1. OS
    2. CPU
    3. GPUs
    4. Memory
    5. Storage

    I will explain each.

    OS

    OS is an abbreviation of “Operating system”, and refers to the system software that controls the operation (operation, operation, and operation) of a computer. In terms of a PC, it is a system that connects the device and software of the PC and controls the device and software.

    Major PC OSs include Microsoft’s Windows, Apple’s mac OS, and open source Linux.

    In AI development, Windows is recommended because it is easy to expand functions, and Linux is also used for servers. For Windows, the pro series is better from the point of view of functions

    CPU

    CPU is an abbreviation for “Central Processing Unit” and is the central processing unit in a computer (the brain of the computer, so to speak). CPUs are versatile in their processing and can handle a variety of things.

    When choosing a PC for deep learning, it is a good idea to choose a higher model from Intel’s CPU “core i5”.

    GPUs

    GPU is an abbreviation for “Graphics Processing Unit”, and is a computing device specialized for screen display and image processing such as 3D graphics.

    GPUs are good at simple calculations and good at parallel processing, so they are a very important part in AI development.

    GPU processing speed is several to 100 times faster than CPU processing speed, and GPU is essential for deep learning.

    Memory

    Memory is the temporary storage of your computer’s work. Since it is temporary, it is characterized by fast access so that the current contents can be retrieved immediately.

    When choosing a PC for deep learning, it is a good idea to choose a memory of 16GB or more.

    Storage

    Storage, also known as “auxiliary storage”, stores data for a long period of time. What is called a hard disk or SSD is one of this storage.

    There is no problem with the storage that is installed in a normal PC, but if it is 512 GB or more, it can handle large amounts of data, so you can rest assured.

    Differences between deep learning PCs and ordinary PCs

    There are three differences between deep learning PCs and ordinary PCs: differences in specifications for each part,''using Linux as the OS,” and “requiring a GPU.”

    In addition, PCs for deep learning are a type of workstation, and feature higher performance than regular PCs.

    Also, some people who are serious about deep learning development use a PC that they have assembled with the necessary parts themselves.

    In the following, I will briefly introduce “ordinary PC”, “self-made PC”, and “workstation/deep learning PC” as a supplement.

    Normal PC

    Deep learning can be performed even on a PC that is normally sold if it is equipped with a GPU.

    For those who are studying deep learning for the first time or who want to try deep learning, a normal PC may be fine.

    Homemade PC

    If you want to do full-scale AI development, you should use your own PC. We also recommend the BTO PC, which allows you to select parts to some extent.

    BTO: An abbreviation for “Build To Order”, which means build-to-order manufacturing. Compared to commercially available finished PCs, you can freely customize the processor, memory, hard disk, mouse, storage, etc.

    Workstation/PC for deep learning

    Workstations are used by individuals for work such as CAD. If you find it difficult, remember that it is a version with good performance on a normal PC.

    * CAD: Design support software for automobiles, architecture, and clothing.

    Supplement: Server

    In addition to the above three methods, there are other ways to develop on the server. A server is used by many users. For personal use, you should choose one of the above three options.

    Should I make my own PC for deep learning?

    Earlier, I mentioned that “Some people who are serious about deep learning development use their own PCs.”

    Below, we will introduce the advantages and cautions of using a self-made PC for those who are wondering whether they should build their own PC for deep learning.

    Advantages of using your own PC

    The advantage of using a self-made PC is that it can be specialized for deep learning and machine learning.

    Homemade PCs can be assembled to have higher specs than those sold at regular stores, so it is recommended when a server cannot be used.

    Points to note when making your own

    One thing to keep in mind when building your own PC for deep learning is that you cannot request guarantees or repairs from the sales company.

    It goes without saying that you build your own PC, but basically if something goes wrong, you have to investigate and deal with it yourself, or pay a certain amount of money and ask for a PC repair.

    Therefore, if you are not very familiar with PCs and machines, you need to be careful when building your own PC.

     

    3 Recommended PCs for Deep Learning

    From here, we will introduce recommended PCs for deep learning. The following three PCs are introduced this time.

    1. DEEP-17FG102-i7K-VOXVI
    2. THIRDWAVE Pro WORKSTATION X4612 standard model
    3. HP ZBook Studio 15.6inch G8 Mobile Workstation new standard model

    ①DEEP-17FG102-i7K-VOXVI

    machine learning

    The first recommended PC is “DEEP-17FG102-i7K-VOXVI”.

    OSUbuntu 18.04 LTS
    CPUCore i7-9700K Intel Z370
    memoryDDR4-2400 SODIMM (PC4-19200) 16GB (8GB x 2)
    Storage ①250GB NVMe M.2 SSD
    Storage②1TB Serial-ATA HDD
    driveNo optical drive
    GPUsGeForce RTX 2080 8GB GDDR6
    display17.3 type (matte color liquid crystal) full HD (1920 x 1080 dots)
    price32,3980 yen ~ (as of 2022/02/08)

    It supports 8GB of high-speed GDDR6 memory similar to desktop and GPU Boost 4.0 that brings out GPU performance, so code created at the development site can be executed at a speed comparable to mobile environments.

    Although this PC is a notebook PC, it boasts performance comparable to that of a desktop PC. It is one that can be used at the forefront of AI development, such as creating sample code, demonstrating, and giving presentations.

    In addition, the same PC comes with ax Co., Ltd.’s demo software “ailia AI showcase”, so you can use various AI functions using trained models such as object detection, image classification, feature extraction, skeleton extraction, and personal identification. You can easily try it.

    In addition, it supports the GPU Cloud platform “NGC (NVIDIA GPU Cloud)” that facilitates AI development, and the latest development environment can be used without complicated settings.

    Just by downloading the deep learning framework, you can use it without worrying about complicated environment settings and consistency, so it is the best laptop for those who are just starting deep learning.

    A framework is a piece of software that serves as the foundation upon which an application is developed.

    ②THIRDWAVE Pro WORKSTATION X4612 standard model

    The second recommended PC is “THIRDWAVE Pro WORKSTATION X4612 standard model”.

    OSnone
    CPUIntel Xeon Silver 4210R (rated 2.40GHz/3.20GHz/13.75MB/10Core/20Thread at TB) x2
    memory32GB (DDR4-3200 ECC RDIMM/16GB×2)
    storageNo disc (2.5″ rear bay 1)
    GPUsNVIDIA T600 4GB (MiniDisplayPort x4) x 1 [Order]
    pricePrice starts at 72,8860 yen (as of 02/08/2022)

    The THIRDWAVE Pro WORKSTATION X4612 standard model is a high-end model that achieves expandability and powerful performance. *Since there is no OS, you will have to choose by yourself.

    Up to two NVIDIA® Quadro® and NVIDIA® GeForce® series ultra-high-end graphics cards can be installed.

    In addition, assuming use on the desk side, it can be operated with a commercial 100V power supply, and can be used for various purposes such as high-resolution video/audio editing, deep learning , CAE/CAD, and 3D animation. .

    ③HP ZBook Studio 15.6inch G8 Mobile Workstation New standard model

    The third recommended PC is “HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model”.

    OSWindows 10 Pro (Japanese) (Downgrade from Windows 11 Pro)
    CPUIntel® Core™ i7-11800H processor (max frequency 4.6GHz, 8 cores/16 threads, 24MB cache)
    memory16GB DDR4-3200 (onboard)
    storage512GB M.2 SSD (PCIe, NVMe, SED OPAL2, TLC)
    GPUsIntel® UHD Graphics and NVIDIA T1200 (4 GB GDDR6)
    display15.6 inch wide full HD liquid crystal display (matte panel, maximum resolution 1920 x 1080, maximum brightness 400cd/m², maximum 16.77 million colors, IPS method, LED backlight, ambient light sensor)
    pricePrice starts from 35,2000 yen (as of 02/08/2022)

    The next-generation Intel® Core™ i9 vPro® processor in the PC is designed to handle complex multi-threaded applications, making multitasking easy.

    The HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model is a laptop designed for performance workflows in every aspect, from keyboard to screen.

    Also, up to NVIDIA RTX™ A5000 or GeForce RTX™ 3080 GPUs can be installed. So you can seamlessly render, design and multitask even with heavy files.

    And with NVIDIA RTX™ professional graphics, the PC can query millions of rows of data sets and analyze them in real time, making it the perfect PC for data scientists and business intelligence professionals.

    Summary

    How was it?

    This time, I explained what deep learning is and the difference between a PC for deep learning and a normal PC.

    A PC has various parts and I think it is difficult, but I would like you to acquire knowledge by all means.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • 3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

    3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

     

    What is machine learning

    Machine learning is one of the most important aspects of AI development, and is an effective method for predicting numerical values ​​and identifying and classifying images.

    One of the machine learning methods is ” neural network . A neural network is a technique inspired by the structure of the human brain and mimics the way neurons work.

    Some of the neural networks include multi-layer perceptrons and deep learning.

    What is deep learning?

    Deep learning was developed to enhance the capabilities of the neural network mentioned in the previous section.

    Deep learning is a neural network with a multi-layered structure, and is currently the mainstream of AI development.

    The difference between machine learning and deep learning is that machine learning learns rules from data by itself. In deep learning, the computer itself learns the feature values ​​that must be specified in machine learning.

    To put it simply, machine learning involves specifying feature values ​​by humans, and deep learning involves learning feature values ​​as well.

    Currently, deep learning is used for image recognition , speech processing, natural language processing , etc. a variety of situations around the world, including

    From here, let’s see what kind of PC should be used when actually performing deep learning.

    Parts required for deep learning PC

    The following five parts are required for a PC for deep learning.

    1. OS
    2. CPU
    3. GPUs
    4. Memory
    5. Storage

    I will explain each.

    OS

    OS is an abbreviation of “Operating system”, and refers to the system software that controls the operation (operation, operation, and operation) of a computer. In terms of a PC, it is a system that connects the device and software of the PC and controls the device and software.

    Major PC OSs include Microsoft’s Windows, Apple’s mac OS, and open source Linux.

    In AI development, Windows is recommended because it is easy to expand functions, and Linux is also used for servers. For Windows, the pro series is better from the point of view of functions

    CPU

    CPU is an abbreviation for “Central Processing Unit” and is the central processing unit in a computer (the brain of the computer, so to speak). CPUs are versatile in their processing and can handle a variety of things.

    When choosing a PC for deep learning, it is a good idea to choose a higher model from Intel’s CPU “core i5”.

    GPUs

    GPU is an abbreviation for “Graphics Processing Unit”, and is a computing device specialized for screen display and image processing such as 3D graphics.

    GPUs are good at simple calculations and good at parallel processing, so they are a very important part in AI development.

    GPU processing speed is several to 100 times faster than CPU processing speed, and GPU is essential for deep learning.

    Memory

    Memory is the temporary storage of your computer’s work. Since it is temporary, it is characterized by fast access so that the current contents can be retrieved immediately.

    When choosing a PC for deep learning, it is a good idea to choose a memory of 16GB or more.

    Storage

    Storage, also known as “auxiliary storage”, stores data for a long period of time. What is called a hard disk or SSD is one of this storage.

    There is no problem with the storage that is installed in a normal PC, but if it is 512 GB or more, it can handle large amounts of data, so you can rest assured.

    Differences between deep learning PCs and ordinary PCs

    There are three differences between deep learning PCs and ordinary PCs: differences in specifications for each part,''using Linux as the OS,” and “requiring a GPU.”

    In addition, PCs for deep learning are a type of workstation, and feature higher performance than regular PCs.

    Also, some people who are serious about deep learning development use a PC that they have assembled with the necessary parts themselves.

    In the following, I will briefly introduce “ordinary PC”, “self-made PC”, and “workstation/deep learning PC” as a supplement.

    Normal PC

    Deep learning can be performed even on a PC that is normally sold if it is equipped with a GPU.

    For those who are studying deep learning for the first time or who want to try deep learning, a normal PC may be fine.

    Homemade PC

    If you want to do full-scale AI development, you should use your own PC. We also recommend the BTO PC, which allows you to select parts to some extent.

    BTO: An abbreviation for “Build To Order”, which means build-to-order manufacturing. Compared to commercially available finished PCs, you can freely customize the processor, memory, hard disk, mouse, storage, etc.

    Workstation/PC for deep learning

    Workstations are used by individuals for work such as CAD. If you find it difficult, remember that it is a version with good performance on a normal PC.

    * CAD: Design support software for automobiles, architecture, and clothing.

    Supplement: Server

    In addition to the above three methods, there are other ways to develop on the server. A server is used by many users. For personal use, you should choose one of the above three options.

    Should I make my own PC for deep learning?

    Earlier, I mentioned that “Some people who are serious about deep learning development use their own PCs.”

    Below, we will introduce the advantages and cautions of using a self-made PC for those who are wondering whether they should build their own PC for deep learning.

    Advantages of using your own PC

    The advantage of using a self-made PC is that it can be specialized for deep learning and machine learning.

    Homemade PCs can be assembled to have higher specs than those sold at regular stores, so it is recommended when a server cannot be used.

    Points to note when making your own

    One thing to keep in mind when building your own PC for deep learning is that you cannot request guarantees or repairs from the sales company.

    It goes without saying that you build your own PC, but basically if something goes wrong, you have to investigate and deal with it yourself, or pay a certain amount of money and ask for a PC repair.

    Therefore, if you are not very familiar with PCs and machines, you need to be careful when building your own PC.

     

    3 Recommended PCs for Deep Learning

    From here, we will introduce recommended PCs for deep learning. The following three PCs are introduced this time.

    1. DEEP-17FG102-i7K-VOXVI
    2. THIRDWAVE Pro WORKSTATION X4612 standard model
    3. HP ZBook Studio 15.6inch G8 Mobile Workstation new standard model

    ①DEEP-17FG102-i7K-VOXVI

    machine learning

    The first recommended PC is “DEEP-17FG102-i7K-VOXVI”.

    OSUbuntu 18.04 LTS
    CPUCore i7-9700K Intel Z370
    memoryDDR4-2400 SODIMM (PC4-19200) 16GB (8GB x 2)
    Storage ①250GB NVMe M.2 SSD
    Storage②1TB Serial-ATA HDD
    driveNo optical drive
    GPUsGeForce RTX 2080 8GB GDDR6
    display17.3 type (matte color liquid crystal) full HD (1920 x 1080 dots)
    price32,3980 yen ~ (as of 2022/02/08)

    It supports 8GB of high-speed GDDR6 memory similar to desktop and GPU Boost 4.0 that brings out GPU performance, so code created at the development site can be executed at a speed comparable to mobile environments.

    Although this PC is a notebook PC, it boasts performance comparable to that of a desktop PC. It is one that can be used at the forefront of AI development, such as creating sample code, demonstrating, and giving presentations.

    In addition, the same PC comes with ax Co., Ltd.’s demo software “ailia AI showcase”, so you can use various AI functions using trained models such as object detection, image classification, feature extraction, skeleton extraction, and personal identification. You can easily try it.

    In addition, it supports the GPU Cloud platform “NGC (NVIDIA GPU Cloud)” that facilitates AI development, and the latest development environment can be used without complicated settings.

    Just by downloading the deep learning framework, you can use it without worrying about complicated environment settings and consistency, so it is the best laptop for those who are just starting deep learning.

    A framework is a piece of software that serves as the foundation upon which an application is developed.

    ②THIRDWAVE Pro WORKSTATION X4612 standard model

    The second recommended PC is “THIRDWAVE Pro WORKSTATION X4612 standard model”.

    OSnone
    CPUIntel Xeon Silver 4210R (rated 2.40GHz/3.20GHz/13.75MB/10Core/20Thread at TB) x2
    memory32GB (DDR4-3200 ECC RDIMM/16GB×2)
    storageNo disc (2.5″ rear bay 1)
    GPUsNVIDIA T600 4GB (MiniDisplayPort x4) x 1 [Order]
    pricePrice starts at 72,8860 yen (as of 02/08/2022)

    The THIRDWAVE Pro WORKSTATION X4612 standard model is a high-end model that achieves expandability and powerful performance. *Since there is no OS, you will have to choose by yourself.

    Up to two NVIDIA® Quadro® and NVIDIA® GeForce® series ultra-high-end graphics cards can be installed.

    In addition, assuming use on the desk side, it can be operated with a commercial 100V power supply, and can be used for various purposes such as high-resolution video/audio editing, deep learning , CAE/CAD, and 3D animation. .

    ③HP ZBook Studio 15.6inch G8 Mobile Workstation New standard model

    The third recommended PC is “HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model”.

    OSWindows 10 Pro (Japanese) (Downgrade from Windows 11 Pro)
    CPUIntel® Core™ i7-11800H processor (max frequency 4.6GHz, 8 cores/16 threads, 24MB cache)
    memory16GB DDR4-3200 (onboard)
    storage512GB M.2 SSD (PCIe, NVMe, SED OPAL2, TLC)
    GPUsIntel® UHD Graphics and NVIDIA T1200 (4 GB GDDR6)
    display15.6 inch wide full HD liquid crystal display (matte panel, maximum resolution 1920 x 1080, maximum brightness 400cd/m², maximum 16.77 million colors, IPS method, LED backlight, ambient light sensor)
    pricePrice starts from 35,2000 yen (as of 02/08/2022)

    The next-generation Intel® Core™ i9 vPro® processor in the PC is designed to handle complex multi-threaded applications, making multitasking easy.

    The HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model is a laptop designed for performance workflows in every aspect, from keyboard to screen.

    Also, up to NVIDIA RTX™ A5000 or GeForce RTX™ 3080 GPUs can be installed. So you can seamlessly render, design and multitask even with heavy files.

    And with NVIDIA RTX™ professional graphics, the PC can query millions of rows of data sets and analyze them in real time, making it the perfect PC for data scientists and business intelligence professionals.

    Summary

    How was it?

    This time, I explained what deep learning is and the difference between a PC for deep learning and a normal PC.

    A PC has various parts and I think it is difficult, but I would like you to acquire knowledge by all means.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy
  • 3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

    3 Recommended PCs for machine learning / deep learning | Explain the necessary parts!

     

    What is machine learning

    Machine learning is one of the most important aspects of AI development, and is an effective method for predicting numerical values ​​and identifying and classifying images.

    One of the machine learning methods is ” neural network . A neural network is a technique inspired by the structure of the human brain and mimics the way neurons work.

    Some of the neural networks include multi-layer perceptrons and deep learning.

    What is deep learning?

    Deep learning was developed to enhance the capabilities of the neural network mentioned in the previous section.

    Deep learning is a neural network with a multi-layered structure, and is currently the mainstream of AI development.

    The difference between machine learning and deep learning is that machine learning learns rules from data by itself. In deep learning, the computer itself learns the feature values ​​that must be specified in machine learning.

    To put it simply, machine learning involves specifying feature values ​​by humans, and deep learning involves learning feature values ​​as well.

    Currently, deep learning is used for image recognition , speech processing, natural language processing , etc. a variety of situations around the world, including

    From here, let’s see what kind of PC should be used when actually performing deep learning.

    Parts required for deep learning PC

    The following five parts are required for a PC for deep learning.

    1. OS
    2. CPU
    3. GPUs
    4. Memory
    5. Storage

    I will explain each.

    OS

    OS is an abbreviation of “Operating system”, and refers to the system software that controls the operation (operation, operation, and operation) of a computer. In terms of a PC, it is a system that connects the device and software of the PC and controls the device and software.

    Major PC OSs include Microsoft’s Windows, Apple’s mac OS, and open source Linux.

    In AI development, Windows is recommended because it is easy to expand functions, and Linux is also used for servers. For Windows, the pro series is better from the point of view of functions

    CPU

    CPU is an abbreviation for “Central Processing Unit” and is the central processing unit in a computer (the brain of the computer, so to speak). CPUs are versatile in their processing and can handle a variety of things.

    When choosing a PC for deep learning, it is a good idea to choose a higher model from Intel’s CPU “core i5”.

    GPUs

    GPU is an abbreviation for “Graphics Processing Unit”, and is a computing device specialized for screen display and image processing such as 3D graphics.

    GPUs are good at simple calculations and good at parallel processing, so they are a very important part in AI development.

    GPU processing speed is several to 100 times faster than CPU processing speed, and GPU is essential for deep learning.

    Memory

    Memory is the temporary storage of your computer’s work. Since it is temporary, it is characterized by fast access so that the current contents can be retrieved immediately.

    When choosing a PC for deep learning, it is a good idea to choose a memory of 16GB or more.

    Storage

    Storage, also known as “auxiliary storage”, stores data for a long period of time. What is called a hard disk or SSD is one of this storage.

    There is no problem with the storage that is installed in a normal PC, but if it is 512 GB or more, it can handle large amounts of data, so you can rest assured.

    Differences between deep learning PCs and ordinary PCs

    There are three differences between deep learning PCs and ordinary PCs: differences in specifications for each part,''using Linux as the OS,” and “requiring a GPU.”

    In addition, PCs for deep learning are a type of workstation, and feature higher performance than regular PCs.

    Also, some people who are serious about deep learning development use a PC that they have assembled with the necessary parts themselves.

    In the following, I will briefly introduce “ordinary PC”, “self-made PC”, and “workstation/deep learning PC” as a supplement.

    Normal PC

    Deep learning can be performed even on a PC that is normally sold if it is equipped with a GPU.

    For those who are studying deep learning for the first time or who want to try deep learning, a normal PC may be fine.

    Homemade PC

    If you want to do full-scale AI development, you should use your own PC. We also recommend the BTO PC, which allows you to select parts to some extent.

    BTO: An abbreviation for “Build To Order”, which means build-to-order manufacturing. Compared to commercially available finished PCs, you can freely customize the processor, memory, hard disk, mouse, storage, etc.

    Workstation/PC for deep learning

    Workstations are used by individuals for work such as CAD. If you find it difficult, remember that it is a version with good performance on a normal PC.

    * CAD: Design support software for automobiles, architecture, and clothing.

    Supplement: Server

    In addition to the above three methods, there are other ways to develop on the server. A server is used by many users. For personal use, you should choose one of the above three options.

    Should I make my own PC for deep learning?

    Earlier, I mentioned that “Some people who are serious about deep learning development use their own PCs.”

    Below, we will introduce the advantages and cautions of using a self-made PC for those who are wondering whether they should build their own PC for deep learning.

    Advantages of using your own PC

    The advantage of using a self-made PC is that it can be specialized for deep learning and machine learning.

    Homemade PCs can be assembled to have higher specs than those sold at regular stores, so it is recommended when a server cannot be used.

    Points to note when making your own

    One thing to keep in mind when building your own PC for deep learning is that you cannot request guarantees or repairs from the sales company.

    It goes without saying that you build your own PC, but basically if something goes wrong, you have to investigate and deal with it yourself, or pay a certain amount of money and ask for a PC repair.

    Therefore, if you are not very familiar with PCs and machines, you need to be careful when building your own PC.

     

    3 Recommended PCs for Deep Learning

    From here, we will introduce recommended PCs for deep learning. The following three PCs are introduced this time.

    1. DEEP-17FG102-i7K-VOXVI
    2. THIRDWAVE Pro WORKSTATION X4612 standard model
    3. HP ZBook Studio 15.6inch G8 Mobile Workstation new standard model

    ①DEEP-17FG102-i7K-VOXVI

    machine learning

    The first recommended PC is “DEEP-17FG102-i7K-VOXVI”.

    OSUbuntu 18.04 LTS
    CPUCore i7-9700K Intel Z370
    memoryDDR4-2400 SODIMM (PC4-19200) 16GB (8GB x 2)
    Storage ①250GB NVMe M.2 SSD
    Storage②1TB Serial-ATA HDD
    driveNo optical drive
    GPUsGeForce RTX 2080 8GB GDDR6
    display17.3 type (matte color liquid crystal) full HD (1920 x 1080 dots)
    price32,3980 yen ~ (as of 2022/02/08)

    It supports 8GB of high-speed GDDR6 memory similar to desktop and GPU Boost 4.0 that brings out GPU performance, so code created at the development site can be executed at a speed comparable to mobile environments.

    Although this PC is a notebook PC, it boasts performance comparable to that of a desktop PC. It is one that can be used at the forefront of AI development, such as creating sample code, demonstrating, and giving presentations.

    In addition, the same PC comes with ax Co., Ltd.’s demo software “ailia AI showcase”, so you can use various AI functions using trained models such as object detection, image classification, feature extraction, skeleton extraction, and personal identification. You can easily try it.

    In addition, it supports the GPU Cloud platform “NGC (NVIDIA GPU Cloud)” that facilitates AI development, and the latest development environment can be used without complicated settings.

    Just by downloading the deep learning framework, you can use it without worrying about complicated environment settings and consistency, so it is the best laptop for those who are just starting deep learning.

    A framework is a piece of software that serves as the foundation upon which an application is developed.

    ②THIRDWAVE Pro WORKSTATION X4612 standard model

    The second recommended PC is “THIRDWAVE Pro WORKSTATION X4612 standard model”.

    OSnone
    CPUIntel Xeon Silver 4210R (rated 2.40GHz/3.20GHz/13.75MB/10Core/20Thread at TB) x2
    memory32GB (DDR4-3200 ECC RDIMM/16GB×2)
    storageNo disc (2.5″ rear bay 1)
    GPUsNVIDIA T600 4GB (MiniDisplayPort x4) x 1 [Order]
    pricePrice starts at 72,8860 yen (as of 02/08/2022)

    The THIRDWAVE Pro WORKSTATION X4612 standard model is a high-end model that achieves expandability and powerful performance. *Since there is no OS, you will have to choose by yourself.

    Up to two NVIDIA® Quadro® and NVIDIA® GeForce® series ultra-high-end graphics cards can be installed.

    In addition, assuming use on the desk side, it can be operated with a commercial 100V power supply, and can be used for various purposes such as high-resolution video/audio editing, deep learning , CAE/CAD, and 3D animation. .

    ③HP ZBook Studio 15.6inch G8 Mobile Workstation New standard model

    The third recommended PC is “HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model”.

    OSWindows 10 Pro (Japanese) (Downgrade from Windows 11 Pro)
    CPUIntel® Core™ i7-11800H processor (max frequency 4.6GHz, 8 cores/16 threads, 24MB cache)
    memory16GB DDR4-3200 (onboard)
    storage512GB M.2 SSD (PCIe, NVMe, SED OPAL2, TLC)
    GPUsIntel® UHD Graphics and NVIDIA T1200 (4 GB GDDR6)
    display15.6 inch wide full HD liquid crystal display (matte panel, maximum resolution 1920 x 1080, maximum brightness 400cd/m², maximum 16.77 million colors, IPS method, LED backlight, ambient light sensor)
    pricePrice starts from 35,2000 yen (as of 02/08/2022)

    The next-generation Intel® Core™ i9 vPro® processor in the PC is designed to handle complex multi-threaded applications, making multitasking easy.

    The HP ZBook Studio 15.6inch G8 Mobile Workstation New Standard Model is a laptop designed for performance workflows in every aspect, from keyboard to screen.

    Also, up to NVIDIA RTX™ A5000 or GeForce RTX™ 3080 GPUs can be installed. So you can seamlessly render, design and multitask even with heavy files.

    And with NVIDIA RTX™ professional graphics, the PC can query millions of rows of data sets and analyze them in real time, making it the perfect PC for data scientists and business intelligence professionals.

    Summary

    How was it?

    This time, I explained what deep learning is and the difference between a PC for deep learning and a normal PC.

    A PC has various parts and I think it is difficult, but I would like you to acquire knowledge by all means.

     

    Follow us on Facebook for updates and exclusive content! Click here: Each Techy