Radeon RX 580X Mobile vs GeForce GTX 960M

#ad 
Buy on Amazon
VS

Primary details

GPU architecture, market segment, value for money and other general parameters compared.

Place in performance ranking460not rated
Place by popularitynot in top-100not in top-100
Cost-effectiveness evaluation1.52no data
ArchitectureMaxwell (2014−2018)Polaris (2016−2019)
GPU code nameN16P-GXPolaris
Market segmentLaptopLaptop
Release date12 March 2015 (9 years ago)10 January 2019 (5 years ago)

Cost-effectiveness evaluation

Performance to price ratio. The higher, the better.

no data

Detailed specifications

General performance parameters such as number of shaders, GPU core base clock and boost clock speeds, manufacturing process, texturing and calculation speed. These parameters indirectly speak of performance, but for precise assessment you have to consider their benchmark and gaming test results. Note that power consumption of some graphics cards can well exceed their nominal TDP, especially when overclocked.

Pipelines / CUDA cores6402304
Core clock speed1096 MHzno data
Boost clock speed1202 MHz1340 MHz
Number of transistors1,870 million5,700 million
Manufacturing process technology28 nm14 nm
Power consumption (TDP)75 Watt65-110 Watt
Texture fill rate47.04155.1
Floating-point performance1,505 gflopsno data

Form factor & compatibility

Information on GeForce GTX 960M and Radeon RX 580X Mobile compatibility with other computer components. Useful when choosing a future computer configuration or upgrading an existing one. For notebook video cards it's notebook size, connection slot and bus, if the video card is inserted into a slot instead of being soldered to the notebook motherboard.

Laptop sizemedium sizedlarge
InterfaceMXM-B (3.0)MXM-B (3.0)
SLI options+no data

VRAM capacity and type

Parameters of VRAM installed: its type, size, bus, clock and resulting bandwidth. Integrated GPUs have no dedicated video RAM and use a shared part of system RAM.

Memory typeGDDR5GDDR5
Maximum RAM amount4 GB8 GB
Memory bus width128 Bit256 Bit
Memory clock speed5000 MHz8000 MHz
Memory bandwidth80.19 GB/s256.0 GB/s
Shared memory--

Connectivity and outputs

Types and number of video connectors present on the reviewed GPUs. As a rule, data in this section is precise only for desktop reference ones (so-called Founders Edition for NVIDIA chips). OEM manufacturers may change the number and type of output ports, while for notebook cards availability of certain video outputs ports depends on the laptop model rather than on the card itself.

Display ConnectorsNo outputsNo outputs

Supported technologies

Supported technological solutions. This information will prove useful if you need some particular technology for your purposes.

Optimus+no data
Ansel+no data

API compatibility

List of supported graphics and general-purpose computing APIs, including their specific versions.

DirectX12 (11_0)12 (12_0)
Shader Model5.16.4
OpenGL4.64.6
OpenCL1.22.0
Vulkan1.1.1261.2.131
CUDA+no data

Pros & cons summary


Recency 12 March 2015 10 January 2019
Maximum RAM amount 4 GB 8 GB
Chip lithography 28 nm 14 nm
Power consumption (TDP) 75 Watt 65 Watt

RX 580X Mobile has an age advantage of 3 years, a 100% higher maximum VRAM amount, a 100% more advanced lithography process, and 15.4% lower power consumption.

We couldn't decide between GeForce GTX 960M and Radeon RX 580X Mobile. We've got no test results to judge.


Should you still have questions concerning choice between the reviewed GPUs, ask them in Comments section, and we shall answer.

Vote for your favorite

Do you think we are right or mistaken in our choice? Vote by clicking "Like" button near your favorite graphics card.


NVIDIA GeForce GTX 960M
GeForce GTX 960M
AMD Radeon RX 580X Mobile
Radeon RX 580X Mobile

Comparisons with similar GPUs

We selected several comparisons of graphics cards with performance close to those reviewed, providing you with more options to consider.

Error: Запрос select b.card_id from ss_benchmarks_results as b left join ss_cards as i on i._id=b.card_id and i._disabled=0 and i.redirect_to=0 left join ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0 left join ss_stat_exist as pop on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2" left join ss_stat_exist as pop2 on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2" where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0 and ( if(pop.visits,pop.visits,pop2.visits)>=1 OR ( to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2 OR to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2 ) ) having !isnull(i._id) order by abs(8.8 - b.result) asc /* # 1 */ limit 6 вызвал ошибку Unknown column 'i._id' in 'having clause'

Array
(
    [0] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/lib/db.php
            [line] => 151
            [function] => db_query
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                )

        )

    [1] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/85/85
            [line] => 150
            [function] => db_getItems
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                )

        )

    [2] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
            [line] => 16525
            [function] => db_cache
            [args] => Array
                (
                    [0] => nearest_video_notebook_0_44_L2
                    [1] => db_getItems
                    [2] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                    [3] => Array
                        (
                            [0] => ss_benchmarks_results
                            [1] => ss_cards
                        )

                )

        )

    [3] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
            [line] => 15
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
                )

            [function] => include
        )

    [4] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/handler/index.php
            [line] => 372
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
                )

            [function] => require
        )

)

Error: Запрос select b.card_id from ss_benchmarks_results as b left join ss_cards as i on i._id=b.card_id and i._disabled=0 and i.redirect_to=0 left join ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0 left join ss_stat_exist as pop on pop.item_type="video" and pop.item1=i._id and pop.item2=3839 and pop.lang="2" left join ss_stat_exist as pop2 on pop2.item_type="video" and pop2.item1=3839 and pop2.item2=i._id and pop2.lang="2" where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0 and ( if(pop.visits,pop.visits,pop2.visits)>=1 OR ( to_days(now()) - to_days(replace("2019-01-10","-00","-01"))<=366/2 OR to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2 ) ) having !isnull(i._id) order by abs(0 - b.result) asc /* # 2 */ limit 6 вызвал ошибку Unknown column 'i._id' in 'having clause'

Array
(
    [0] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/lib/db.php
            [line] => 151
            [function] => db_query
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=3839 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=3839 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2019-01-10","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(0 - b.result) asc /* # 2 */ limit 6
                )

        )

    [1] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/85/85
            [line] => 150
            [function] => db_getItems
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=3839 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=3839 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2019-01-10","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(0 - b.result) asc /* # 2 */ limit 6
                )

        )

    [2] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
            [line] => 16525
            [function] => db_cache
            [args] => Array
                (
                    [0] => nearest_video_notebook_0_3839_L2
                    [1] => db_getItems
                    [2] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=3839 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=3839 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2019-01-10","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(0 - b.result) asc /* # 2 */ limit 6
                    [3] => Array
                        (
                            [0] => ss_benchmarks_results
                            [1] => ss_cards
                        )

                )

        )

    [3] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
            [line] => 15
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
                )

            [function] => include
        )

    [4] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/handler/index.php
            [line] => 372
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
                )

            [function] => require
        )

)

Error: Запрос select b.card_id from ss_benchmarks_results as b left join ss_cards as i on i._id=b.card_id and i._disabled=0 and i.redirect_to=0 left join ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0 left join ss_stat_exist as pop on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2" left join ss_stat_exist as pop2 on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2" where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0 and ( if(pop.visits,pop.visits,pop2.visits)>=1 OR ( to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2 OR to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2 ) ) having !isnull(i._id) order by abs(8.8 - b.result) asc /* # 1 */ limit 6 вызвал ошибку Unknown column 'i._id' in 'having clause'

Array
(
    [0] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/lib/db.php
            [line] => 151
            [function] => db_query
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                )

        )

    [1] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/85/85
            [line] => 150
            [function] => db_getItems
            [args] => Array
                (
                    [0] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                )

        )

    [2] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
            [line] => 16525
            [function] => db_cache
            [args] => Array
                (
                    [0] => nearest_video_notebook_0_44_L2
                    [1] => db_getItems
                    [2] => select b.card_id from ss_benchmarks_results as b
			left join ss_cards as i
			on i._id=b.card_id and i._disabled=0 and i.redirect_to=0
			
			left join
			ss_cards_custom as custom on custom.filename=i.filename and custom._disabled=0
			left join
			ss_stat_exist as pop
			on pop.item_type="video" and pop.item1=i._id and pop.item2=44 and pop.lang="2"
			left join
			ss_stat_exist as pop2
			on pop2.item_type="video" and pop2.item1=44 and pop2.item2=i._id and pop2.lang="2"
			
			where b.benchmark_id=-1 and i.type="notebook" and i.prof="0" and i._disabled=0
			and

			(
			if(pop.visits,pop.visits,pop2.visits)>=1
			OR
			(
			to_days(now()) - to_days(replace("2015-03-12","-00","-01"))<=366/2
			OR
			to_days(now()) - to_days(replace(if(custom.date_of_announcement AND custom.date_of_announcement!="0000-01-00",custom.date_of_announcement,i.date_of_announcement),"-00","-01"))<=366/2
			)
			)
			having !isnull(i._id)
			order by abs(8.8 - b.result) asc /* # 1 */ limit 6
                    [3] => Array
                        (
                            [0] => ss_benchmarks_results
                            [1] => ss_cards
                        )

                )

        )

    [3] => Array
        (
            [file] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
            [line] => 15
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/textblocks/text/22/222
                )

            [function] => include
        )

    [4] => Array
        (
            [file] => /var/www/web/data/www/technical.city/system/handler/index.php
            [line] => 372
            [args] => Array
                (
                    [0] => /var/www/web/data/www/technical.city/_content/pages/text/23/323_1
                )

            [function] => require
        )

)

Community ratings

Here you can see the user ratings of the compared graphics cards, as well as rate them yourself.


3.7 947 votes

Rate GeForce GTX 960M on a scale of 1 to 5:

  • 1
  • 2
  • 3
  • 4
  • 5
2.7 6 votes

Rate Radeon RX 580X Mobile on a scale of 1 to 5:

  • 1
  • 2
  • 3
  • 4
  • 5

Questions & comments

Here you can ask a question about this comparison, agree or disagree with our judgements, or report an error or mismatch.