±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 801  |  »Ø¸´: 5

wifloveice

½ð³æ (³õÈëÎÄ̳)

[ÇóÖú] ·Ö×Ó„ÓÁ¦ŒWÒÔOPENMPƽÐл¯•r¾Ž×g†–î}

§³???????4??????X????IVF???g????????OPENMP??§Ô?????K??Lennard-Jones ????a???M?§®y???
??????????Y????OPENMP?????\?????????c?????????????§µ?
??????????? ???P????? CPU??????m?_??100%??
?????????(???????p)???????Y??n(?c???_??????\??r?Y?????)??
????? ??????gOPENMP?a???????N?^?? ?? ??????????`???x?x
M9832043@mail.npust.edu.tw

SUBROUTINE SSEVAL
use omp_lib
IMPLICIT NONE
INTEGER(KIND=4) IN,LIST,NPOINT,I,J,JBEGIN,JEND,NATOM,NABORS,KSORT,NSTEP,NATOM1
REAL(KIND=8) RL,X,Y,Z,XI,YI,ZI,RIJ ,ENERGY,VIRIAL
  LOGICAL LG,LUPDAT
  COMMON /INTGRS/ IN(10)
  COMMON /LGCLS / LG(4)
  COMMON /NABLST/ LIST(45000)  ,NPOINT(360)
  COMMON /POSIT / X(360),Y(360),Z(360)
  COMMON /REALS / RL(26)
  COMMON /ZLOOP / XI,YI,ZI,RIJ ,I,J,JBEGIN,JEND

  EQUIVALENCE (IN(2),KSORT) ,(IN(3),NABORS) ,(IN(4),NATOM)
  EQUIVALENCE (IN(5),NATOM1),(IN(6),NSTEP)
  EQUIVALENCE (RL(6),ENERGY),(RL(24),VIRIAL),(LG(4),LUPDAT)

  ENERGY=0.D0
  VIRIAL=0.D0
  NABORS=0
  LUPDAT=.FALSE.
  IF (MOD(NSTEP,KSORT) .EQ. 0) LUPDAT=.TRUE.

!$OMP PARALLEL PRIVATE(I)
!$OMP DO

  DO 300 I=1,NATOM1
  JBEGIN=NPOINT(I)
  JEND  =NPOINT(I+1)-1
  IF (LUPDAT) THEN
    NPOINT(I)=NABORS+1
        JBEGIN   =I+1
        JEND     =NATOM
  ENDIF
    XI=X(I)
    YI=Y(I)
    ZI=Z(I)
    CALL SSINLP
300 CONTINUE

!$OMP END DO
!$OMP END PARALLEL

  IF (LUPDAT) NPOINT(NATOM)=NABORS+1
  RETURN
  END
***************************************************************
SUBROUTINE SSINLP
IMPLICIT NONE
INTEGER(KIND=4) IN,LIST,NPOINT,I,J,JBEGIN,JEND,JX
REAL(KIND=8) FX,FY,FZ,Z1,X,Y,Z,RL,XI,YI,ZI,RIJ
REAL(KIND=8) CUBE,CUBEH,ENERGY,ESHFT,FSHFT,RCUT,VIRIAL,FOR,ENR,R6INV,RSQINV,RSQ,ZIJ,YIJ,XIJ
LOGICAL LG,LSHIFT,LUPDAT
  COMMON /FORCE / FX(360) ,FY(360) ,FZ(360)
  COMMON /LGCLS / LG(4)
  COMMON /NABLST/LIST(45000),NPOINT(360)
  COMMON /POSIT /X(360),Y(360),Z(360)
  COMMON /REALS /RL(26)
  COMMON /ZLOOP /XI,YI,ZI,RIJ,I,J,JBEGIN,JEND
  EQUIVALENCE (RL(2),CUBE),    (RL(3),CUBEH),  (RL(6),ENERGY)
  EQUIVALENCE (RL(7),ESHFT),   (RL(10),FSHFT), (RL(11),RCUT)   
  EQUIVALENCE (RL(24),VIRIAL), (LG(3),LSHIFT), (LG(4),LUPDAT)

  DO 400 JX=JBEGIN,JEND
  J=JX
  IF (.NOT.LUPDAT) J=LIST(JX)

  XIJ=XI-X(J)
  YIJ=YI-Y(J)
  ZIJ=ZI-Z(J)

  RSQ=XIJ*XIJ+YIJ*YIJ+ZIJ*ZIJ

  RIJ=DSQRT(RSQ)
IF (LUPDAT) CALL SSUPDT

  IF(RIJ.LE.RCUT) THEN
    RSQINV=1.D0/RSQ
        R6INV =RSQINV*RSQINV*RSQINV

   ENR = 4.D0*R6INV*(R6INV-1.D0)
        FOR = RSQINV*48.D0*R6INV*(R6INV-0.5D0)
        IF (LSHIFT) ENR=ENR+ESHFT+RIJ*FSHFT
        IF (LSHIFT) FOR=FOR-RSQINV*RIJ*FSHFT
          FX(I)=FX(I)+FOR*XIJ
      FX(J)=FX(J)-FOR*XIJ
          FY(I)=FY(I)+FOR*YIJ
      FY(J)=FY(J)-FOR*YIJ
          FZ(I)=FZ(I)+FOR*ZIJ
      FZ(J)=FZ(J)-FOR*ZIJ
        ENERGY=ENERGY+ENR
        VIRIAL=VIRIAL-FOR*RSQ
  ENDIF
400 CONTINUE

    RETURN
        END

[ Last edited by ghcacj on 2011-8-27 at 08:44 ]
»Ø¸´´ËÂ¥
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

yahoohoo

Ìú¸Ëľ³æ (ÖøÃûдÊÖ)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï ¡ï ¡ï
Óù½£½­ºþ(½ð±Ò+4): лл 2011-08-23 22:06:41
Á¦ºÍλÖÃÐèÒªÓÃÏ̶߳ÀÁ¢µÄÊý×éÀ´´¢´æ¡£F[NTHD][NATOMS], X[NTHD][NATOMS]¡£
Èç¹ûÖ»ÓÃÒ»¸ö¹«¹²Êý×飬ÄÇô¶à¸öÏ߳̿ÉÄÜͬʱдÈëͬһ¸ö»òλÖÃÁÙ½üµÄÄڴ棬Õâ»áµ¼Ö¼ÆËã´íÎóÒÔ¼°ÔËËãËÙ¶ÈϽµ¡£
2Â¥2011-08-23 13:43:20
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wifloveice

½ð³æ (³õÈëÎÄ̳)

??? ???"????¦Ë?????????????????????????" ????f??????????
1. ???§¦r????_????(????????¦Ë????§Ó????c??????§Ó???)
2. ????f????§³?
DO 300 I=1,NATOM1
  JBEGIN=NPOINT(I)
  JEND  =NPOINT(I+1)-1
END DO
?@???????§Ù???????????????"?o??"?????????? ???~??????
3Â¥2011-08-23 17:19:26
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

yahoohoo

Ìú¸Ëľ³æ (ÖøÃûдÊÖ)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï ¡ï
Óù½£½­ºþ(½ð±Ò+3): лл 2011-08-23 22:06:48
wifloveice(½ð±Ò+20): ÖxÖxŽÍæ 2011-08-25 00:07:13
ÎÒûÃ÷°×Äã˵µÄÊÇʲôÒâ˼¡£
ʹÓöà¸öcpu cores¾ÍÊÇΪÁË·Öµ£Á¦µÄ¼ÆË㣬¼ÙÈçÄãÓÐ100¸öÔ­×ÓºÍ2¸öcpu cores£¬ÄÇôµÚÒ»¸öcore¼ÆËãǰ50¸öÔ­×Ó£¬µÚ¶þ¸öcore¼ÆËãºó50¸öÔ­×Ó¡£
4Â¥2011-08-23 17:54:37
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wifloveice

½ð³æ (³õÈëÎÄ̳)

ÄãºÃ ÎÒÔÙÑa³äÕfÃ÷ Òª±íß_µÄÊÂí—
СµÜ×î½ü¿´ÁËЩÙYÁÏ   µÃÖªopenmpÒªÈçºÎ·Ö¸î Ö÷Òª¿´Ê¹ÓöàÉÙcpu
¶øÊ¹ÓÃopenmpÈç´óÖÂÏÂ
!$OMP PARALLEL PRIVATE(I)     <---openmpÖ¸Áî
!$OMP DO                              <---openmpÖ¸Áî
DO I=1,100
N=N+1
END DO
!$OMP END DO                       <---openmpÖ¸Áî
!$OMP END PARALLEL            <---openmpÖ¸Áî

(»Øµ½×îÉÏ퓆–î})  µ«ÒÔÏàͬ·½Ê½·ÅßMÈ¥·Ö×Ó„ÓÁ¦ŒW¾Ž´aáá ?K›]ÓÐÏëÏñÖꆆÎ
¶ø´ó´óËùÌáµÄ  ÒÔ"Ï̶߳ÀÁ¢µÄÊý×éÀ´´¢´æ" ÊÇ·ñ¿ÉÒÔÔÙÔ”¼šÕfÃ÷ ÖxÖx
5Â¥2011-08-23 23:01:18
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

yahoohoo

Ìú¸Ëľ³æ (ÖøÃûдÊÖ)

¡ï ¡ï ¡ï
Óù½£½­ºþ(½ð±Ò+3): лл 2011-08-26 20:09:54
ÒýÓûØÌû:
5Â¥: Originally posted by wifloveice at 2011-08-23 23:01:18:
ÄãºÃ ÎÒÔÙÑa³äÕfÃ÷ Òª±íß_µÄÊÂí—
СµÜ×î½ü¿´ÁËЩÙYÁÏ   µÃÖªopenmpÒªÈçºÎ·Ö¸î Ö÷Òª¿´Ê¹ÓöàÉÙcpu
¶øÊ¹ÓÃopenmpÈç´óÖÂÏÂ
!$OMP PARALLEL PRIVATE(I)     <---openmpÖ¸Áî
!$OMP DO                         ...

Èç¹ûÄãÕæÊÇÏëѧopenmp²¢ÐУ¬½¨ÒéÄ㻨1£­3¸öÔµÄʱ¼ä´ÓopenmpµÄ»ù´¡ÖªÊ¶Ñ§ÆðÔÙµ½mdµÄ²¢ÐС£ÍøÉÏÓкܶà×ÊÁÏ£¬ÍêÈ«¿ÉÒÔ×Ôѧ¡£µ¥Æ¾Ò»¸öÌû×Ó½â¾öÄãµÄËùÓÐÎÊÌâ²»ÏÖʵ£¬
6Â¥2011-08-26 18:30:48
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ wifloveice µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 085600£¬320·ÖÇóµ÷¼Á +7 ´ó²öС×Ó 2026-04-01 8/400 2026-04-05 21:19 by ѧԱ8dgXkO
[¿¼ÑÐ] Ò»Ö¾Ô¸±±¾©½»Í¨´óѧ²ÄÁϹ¤³Ì×Ü·Ö358Çóµ÷¼Á +4 cs0106 2026-04-04 4/200 2026-04-05 18:46 by imissbao
[¿¼ÑÐ] 326Çóµ÷¼Á +3 ¹ËÈô¸¡Éú 2026-04-05 3/150 2026-04-05 18:32 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 306·Ö²ÄÁÏÓ뻯¹¤Çóµ÷¼Á +7 Àè°ÉÀ²À²ÄãºÜÓÐà 2026-04-03 7/350 2026-04-05 17:18 by Hdyxbekcb
[¿¼ÑÐ] 070300»¯Ñ§Çóµ÷¼Á +17 С»ÆÑ¼±¦ 2026-03-30 17/850 2026-04-05 12:03 by Äþܰ¹þ¹þ
[¿¼ÑÐ] 278Çóµ÷¼Á +14 ·¶æÃÄÈ 2026-04-04 15/750 2026-04-04 22:15 by lqwchd
[¿¼ÑÐ] 280Çóµ÷¼Á +21 ¹¾ààÏþÏþ 2026-04-02 22/1100 2026-04-04 11:12 by Öí»á·É
[¿¼ÑÐ] ²ÄÁÏ295 +13 СӢ11 2026-04-03 14/700 2026-04-04 09:02 by À´¿´Á÷ÐÇÓê10
[¿¼ÑÐ] ²ÄÁÏ¿ÆÑ§Ó빤³Ì¿¼ÑÐ +10 Õü¾ÈÆ¤ÌØÍÐÏÈÉú 2026-04-02 10/500 2026-04-03 23:57 by userper
[¿¼ÑÐ] 293Çóµ÷¼Á +5 ĩδmm 2026-04-02 6/300 2026-04-03 15:20 by Íõ±£½Ü33
[¿¼ÑÐ] Çóµ÷¼Á»ú»á +5 ÒâȾivy 2026-04-03 5/250 2026-04-03 15:13 by qoooooo614
[˶²©¼ÒÔ°] ÇóÀÏʦÊÕÁô +9 lllq123 2026-04-03 9/450 2026-04-03 13:48 by ºôÎü¶¼ÊǼõ·Ê
[¿¼ÑÐ] 08¹¤¿Æ£¬295£¬½ÓÊÜ¿çרҵµ÷¼Á +8 lmnlzy 2026-03-30 8/400 2026-04-03 13:08 by nalakaiqi
[¿¼ÑÐ] ÊýÒ»Ó¢Ò»285Çóµ÷¼Á +7 AZMK 2026-04-03 9/450 2026-04-03 13:03 by ms629
[¿¼ÑÐ] Ò»Ö¾Ô¸»ª¶«Àí¹¤´óѧ£¬080500ѧ˶£¬317·Ö£¬Çóµ÷¼Á +13 s1145 2026-03-31 15/750 2026-04-03 11:44 by msi123
[¿¼ÑÐ] 330Çóµ÷¼Á +3 °×ÉñÎØºôºô 2026-04-02 3/150 2026-04-03 10:15 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 326Çóµ÷¼Á +10 áÌáÌ×Ð 2026-04-02 10/500 2026-04-03 09:08 by ÅÁ¶ûÂíÀ­ÌØ
[¿¼ÑÐ] Ò»Ö¾Ô¸ÉϺ£º£Ñó´óѧ083200ʳƷѧ˶£¬Çóµ÷¼Á£¬½ÓÊÜÆäËûרҵ +6 whatÕÅ 2026-04-01 7/350 2026-04-02 16:48 by zzsw+
[¿¼ÑÐ] Ò»Ö¾Ô¸Î÷°²½»´ó²ÄÁÏѧ˶£¨Ó¢Ò»Êý¶þ£©347£¬Çóµ÷¼Áµ½¸ß·Ö×Ó/²ÄÁÏÏà¹Ø×¨Òµ +7 zju51 2026-03-31 9/450 2026-04-01 19:35 by CFQZAFU
[¿¼ÑÐ] Ò»Ö¾Ô¸±±¾©¿Æ¼¼´óѧ085601²ÄÁϹ¤³ÌÓ¢Ò»Êý¶þ³õÊÔ×Ü·Ö335Çóµ÷¼Á +5 Ë«ÂíβƦÀϰå2 2026-03-31 5/250 2026-04-01 09:04 by oooqiao
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û