threading

threading

This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)

multithreading

A feature within a CPU that allows two or more instruction streams (threads) to execute concurrently. Each stream is a "subprocess" that is managed by the CPU and operating system. Multithreading takes advantage of the superscalar architecture in most CPUs combined with the fact that while one operation takes place, very often another can proceed simultaneously. For example, as soon as an instruction to output data to storage is given, a huge number of data processing instructions (compare, copy, goto, etc.) can be executed while storage is being written. Depending on the program logic, instructions can be executed out of sequence and benefit from some overlap.

Both operating systems and applications may be written to use threads. However, designing the program logic for multithreading that ensures instructions are always executed without conflict can be a daunting task.

Multicore vs. Multithreading
Multicore CPUs have two or more processing cores, each capable of executing instructions in parallel. In fact, except for low-cost microcontrollers, most CPUs have two or more cores. In contrast, multithreading occurs within a single processing core to increase performance approximately 25%. Each thread is a "logical core" rather than a physical core. See microcontroller.

Today's CPUs generally support at least two threads per core, but some handle many more. For example, IBM's POWER10 CPU comes with up to 15 cores, and each core handles eight threads for a total of 120 threads. Tasks such as video rendering and machine vision, which perform millions of identical calculations on a matrix of pixels, are candidates for multithreading. See superscalar, SMP, re-entrant code, multicore, multiprocessing and Hyper-Threading.


No Multithreading
Each of these two cores in this dual-core CPU example is executing instructions independently of the other. The arrows point to the two machine instructions being executed at the moment.







Dual Cores and Two Threads
Each core has two threads, which provides some degree of overlap within the routines that are executing simultaneously. If both threads in both cores are executing, four operations are taking place simultaneously.







Threads Galore
The cover of Software Development Times in November 2012 highlighted the issue that CPUs with many cores provide more channels of parallel instruction execution.
Copyright © 1981-2025 by The Computer Language Company Inc. All Rights reserved. THIS DEFINITION IS FOR PERSONAL USE ONLY. All other reproduction is strictly prohibited without permission from the publisher.
The following article is from The Great Soviet Encyclopedia (1979). It might be outdated or ideologically biased.

Threading

 

industrial processes for producing threads through removal of a chip from the surface of various articles. Threading is performed using special thread-cutting, nut-tapping, bolt-screwing, and thread-grinding machines, as well as automatic, semiautomatic, and turret lathes.

Figure 1. Threading on a lathe: (a) by the copying method; (b) by the generating method; (1) thread profile; (2) cutting tool; (S) cutting-tool feed, equal to the thread pitch; (Srad) radial feed; (Stat) lateral feed

The simplest threading method uses taps and dies and is done manually, using nut-tapping and bolt-screwing tools. Threading on lathes is performed with cutting tools in several passes (Figure 1). Thread with a pitch S ≦ mm is cut by the copying method with radial feed, whereas thread with S ≧ 2.5 mm is cut first by the generating method with lateral feed (rough passes) and then by the copying method (finishing passes). Threading with cutting tools is a process of low productivity, but it is capable of producing thread with low surface roughness (grade ▽8-▽9), which corresponds to precision class 4. Threading by means of thread chasers and cutters increases productivity, since such methods make possible production of the thread in a single pass.

The most advanced method of threading, called the highspeed or vortex method, makes possible an increase in productivity’by a factor of 2.0–2.5 as compared to the production rate with thread cutters and by a factor of more than 10 as compared to methods using cutting tools. Threading by the high-speed method is performed using methods of generating and envelopment (Figure 2). The cutting head, with one or more cutters equipped with hard-alloy cutting bars, is mounted eccentrically with respect to the blank being machined. The blank rotates at 30–300 rpm in one direction, and the cutting head rotates at 1,000–3,000 rpm in the opposite direction. The blank is advanced axially by one step, corresponding to the pitch of the thread, during each revolution. Each cutter touches the blank once each revolution. The cutting speed may be as high as 400 m/min. The method is applicable to threading on both exterior and interior surfaces with diameters of more than 50 mm and provides surface roughness of class 6 (▽6) and precision of class 5–6. Threading may also be performed by plastic deformation (thread knurling).

Figure 2. High-speed threading: (a) envelopment method, (b) generating method, (1) blank, (2) cutting head, (nb) direction of rotation of blank, (nc) direction of rotation of cutting head

REFERENCES

Barbashov, F. A. Rez’bofrezernye raboty, 2nd ed. Moscow, 1970.
Danilevskii, V. V. Tekhnologiia mashinostroeniia. Moscow, 1972.
Spravochnik tekhnologa mashinostroitelia, 3rd ed., vols. 1–2. Moscow, 1972.

A. F. DUBROVSKII

The Great Soviet Encyclopedia, 3rd Edition (1970-1979). © 2010 The Gale Group, Inc. All rights reserved.
Mentioned in
Copyright © 2003-2025 Farlex, Inc Disclaimer
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional.